SQL: CREAR TABLA COMO DECLARACIÓN

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

SQL: CREAR TABLA COMO DECLARACIÓN

Este tutorial de SQL explica cómo usar SQL Declaración CREAR TABLA COMO Con sintaxis y ejemplos.

describir

También puede usar la instrucción SQL CREATE TABLE AS para crear una tabla a partir de una tabla existente copiando sus columnas.

Tenga en cuenta que cuando se crea una tabla de esta manera, la nueva tabla se completará con registros de la tabla existente (según la instrucción SELECT).

Crear tabla: copiando todas las columnas de otra tabla

sintaxis

La sintaxis de la declaración CREATE TABLE AS al copiar todas las columnas en SQL es:

CREATE TABLE new_table
  AS (SELECT * FROM old_table);

ejemplo

Veamos un ejemplo que muestra cómo crear una tabla copiando todas las columnas de otra tabla.

Por ejemplo:

CREATE TABLE suppliers
AS (SELECT *
    FROM companies
    WHERE id > 1000);

Esto creará una nueva tabla llamada Proveedores con todas las columnas de la tabla Empresa.

Si hay registros en la tabla de empresas, la nueva tabla de proveedores también contendrá los registros seleccionados por la instrucción SELECT.

Crear tabla: copiando columnas seleccionadas de otra tabla

sintaxis

La sintaxis de la instrucción CREATE TABLE AS para copiar las columnas seleccionadas es:

CREATE TABLE new_table
  AS (SELECT column_1, column2, ... column_n
      FROM old_table);

ejemplo

Veamos un ejemplo que muestra cómo crear una tabla copiando columnas seleccionadas de otra tabla.

Por ejemplo:

CREATE TABLE suppliers
  AS (SELECT id, address, city, state, zip
      FROM companies
      WHERE id > 1000);

Esto creará una nueva tabla llamada Proveedores, pero la nueva tabla solo contendrá las columnas especificadas de la tabla Empresas.

Asimismo, si hay registros en la tabla de empresas, la nueva tabla de proveedores también contendrá los registros seleccionados por la instrucción SELECT.

Crear tabla: copiando columnas seleccionadas de varias tablas

sintaxis

La sintaxis de la instrucción CREATE TABLE AS para copiar columnas de varias tablas es:

CREATE TABLE new_table
  AS (SELECT column_1, column2, ... column_n
      FROM old_table_1, old_table_2, ... old_table_n);

ejemplo

Veamos un ejemplo que muestra cómo crear una tabla copiando columnas seleccionadas de varias tablas.

Por ejemplo:

CREATE TABLE suppliers
  AS (SELECT companies.id, companies.address, categories.cat_type
      FROM companies, categories
      WHERE companies.id = categories.id
      AND companies.id > 1000);

Esto creará una nueva tabla llamada Proveedores basada en las columnas de las tablas Compañía y Categoría.

Preguntas frecuentes

Pregunta: ¿Cómo puedo crear una tabla SQL a partir de otra tabla sin copiar ningún valor de la tabla anterior?

Respuesta: Para hacer esto, la sintaxis SQL CREATE TABLE es:

CREATE TABLE new_table
  AS (SELECT *
      FROM old_table WHERE 1=2);

Por ejemplo:

CREATE TABLE suppliers
  AS (SELECT *
      FROM companies WHERE 1=2);

Esto creará una nueva tabla llamada Proveedores que incluye todas las columnas de la tabla de empresas, pero ningún dato de la tabla de empresas.

Agradecimientos: ¡Nos gustaría agradecer a Daniel W. por esta solución!

(Visited 14 times, 1 visits today)