Créer une table en utilisant la syntaxe SELECT dans MySQL
P粉715228019
P粉715228019 2023-07-20 22:47:01
0
1
594

Je veux savoir comment MySQL interprète la syntaxe CREATE TABLE :

Si c'était écrit comme ceci :

CREATE TABLE tbl1 (
    `v1` int,
    `v2` int
     CONSTRAINT idx PRIMARY KEY (v1)
)
SELECT a, b FROM tbl2;
  • Est-ce qu'il décide quelles valeurs vont dans la v1 et quelles valeurs vont dans la v2 en fonction de l'ordre dans l'instruction select ?

  • Utilise-t-il le nom que j'ai spécifié dans l'instruction CREATE TABLE, ou obtient-il le nom de l'instruction select ?

J'ai déjà utilisé CREATE TABLE XX SELECT val FROM YY, mais j'aimerais être plus précis sur la syntaxe ci-dessus.

P粉715228019
P粉715228019

répondre à tous(1)
P粉741678385

Sur la base de la solution actuelle, vous obtiendrez un tableau avec les colonnes v1 v2 a et b.

Pour savoir comment le faire correctement, consultez le chapitre "CREATE TABLE ... SELECT Statement", veuillez vous référer à la documentation officielle de MySQL. .

Donc si vous voulez juste que v1 et v2 aient un index sur v1, comme ceci :

CREATE TABLE tbl1 (PRIMARY KEY (v1))
SELECT a v1,
       b v2
FROM tbl2;
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal