Création d'une table à partir d'une table existante

Une copie d'une table existante peut être créée à l'aide d'une combinaison de l'instruction CREATE TABLE et de l'instruction SELECT. La nouvelle table a les mêmes définitions de colonne. Toutes les colonnes ou colonnes spécifiques peuvent être sélectionnées. Lorsque vous créerez une nouvelle table à l'aide de la table existante, la nouvelle table sera remplie à l'aide des valeurs existantes de l'ancienne table.

Syntaxe

La syntaxe de base pour créer une table à partir d'une autre table est la suivante -

CREATE TABLE NEW_TABLE_NAME AS
   SELECT [ column1, column2...columnN ]
   FROM EXISTING_TABLE_NAME
   [ WHERE ]

Ici, colonne1, colonne2 ... sont les champs de la table existante et les mêmes seraient utilisés pour créer les champs de la nouvelle table.

Exemple

Voici un exemple qui créerait une table SALARY en utilisant la table CUSTOMERS et ayant les champs Customer ID et Customer SALARY -

SQL> CREATE TABLE SALARY AS
   SELECT ID, SALARY
   FROM CUSTOMERS;

Cela créerait une nouvelle table SALAIRE qui aura les enregistrements suivants -

+----+----------+
| ID | SALARY   |
+----+----------+
|  1 |  2000.00 |
|  2 |  1500.00 |
|  3 |  2000.00 |
|  4 |  6500.00 |
|  5 |  8500.00 |
|  6 |  4500.00 |
|  7 | 10000.00 |
+----+----------+
sql-create-table.htm