2010-03-18 33 views
2

,當我看到下面我有點驚訝。這個用途實際上是什麼?我感到有點困惑,因爲我是愚蠢的創建臨時表,然後通過插入填充它..使用「AS」在MySQL不是別名

謝謝您如何創建一個臨時表,並用SELECT查詢的結果來填充它

回答

3

它。

您可以在CREATE TABLE規範的最底部看到它in the documentation

select_statement中:
[忽略| REPLACE] [AS] SELECT ...(某些合法選擇語句)

1

這將爲您創建一個臨時表,但請記住這不會帶來您在原始表上的任何索引。出於這個原因,有時它可以更好地創建使用

create table x like y; 

表定義的完整副本,因爲這將創建一個空表,你也需要運行

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

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

這個命令用於將整個表複製到另一個表中;