2010-03-18 13 views
2

j'étais un peu surpris quand j'ai vu ce qui suit:L'utilisation de « AS » dans MySQL - non pas comme alias

CREATE TEMPORARY TABLE X (ID int) AS SELECT NumColumn FROM Table 

J'ai essayé de google, mais seulement trouvé en utilisant cela comme alieases. Qu'est-ce que cette utilisation est réellement? Je me sens peu confus car je créais bêtement table temporaire, puis le remplir à l'aide de l'insert ..

Merci

Répondre

3

Sa façon dont vous créez une table temporaire et le remplir avec les résultats d'une requête de sélection.

Vous pouvez le voir in the documentation au bas de la CREATE TABLE spécification

select_statement:
[IGNORE | REMPLACER] [AS] SELECT ... (Certains instruction select juridique)

1

Cela va créer une table temporaire pour vous, mais rappelez-vous que cela n'apporter tous les indices que vous aviez sur la table d'origine. Pour cette raison, parfois, il peut être préférable de créer une copie complète de la définition de table à l'aide

create table x like y; 

Depuis cela crée seulement une table vide, vous devez exécuter aussi

insert into x (col1) select col1 from y; 
1

CREATE TABLE (table name) AS SELECT * FROM (existing table name);

cette commande pour copier toute la table dans une autre table;