2017年9月5日 星期二

[SQL] SELECT INTO跟INSERT INTO的差別

轉載 :  https://goo.gl/a6PvXF

SELECT INTO可以into進去暫存的table也可以into實體table,
INSERT INTO只能into實體的table。
實體:SELECT ~ INTO table2 FROM table1
虛擬:SELECT ~ INTO #table2 FROM table1


也就是說,如果使用SELECT INTO
後面的table2如果本來就有,他就直接塞資料;
如果本來就沒有table2,他會新建一個table2,再塞資料。


加了#的意義就是,into進去後,
把Query關掉,重新開啟一個Query,table2就不見了,等於是暫存性的。


當然假如不加#的話,table2就會一直保留著。


另外SELECT INTO如果是實體用法,可以等同於:
INSERT INTO table2 (.....)
SELECT ~ FROM table1