2

如何组合SELECTandINSERT INTO命令并将结果插入到 SQL Server 中的临时表中?

像这样的东西:

INSERT INTO #TempTable 
    SELECT * FROM MyTable;
4

3 回答 3

9

你有两个选择。第一个是创建您的临时表,然后使用INSERT INTO... SELECT,如下所示:

CREATE TABLE #temp (
  Col1 ...
);

INSERT INTO #temp
SELECT * FROM OtherTable;

第二个选项是直接插入一个新的临时表:

SELECT  *
INTO    #temp
FROM    OtherTable;

最大的不同是使用方法1,您需要提前指定临时表中的所有列。方法 2 为您提供了一个临时表,该表自动包含OtherTable.

于 2012-07-14T19:18:10.763 回答
5

您想插入一个尚不存在的表中吗?你的语法很接近。见这里

SELECT * INTO #BrandNewTempTable FROM MyTable 
于 2012-07-14T19:07:45.757 回答
2

您的临时表需要与原始表具有相同的字段

如果不是,您需要指定所有字段,如下面的代码:

INSERT INTO TEMPORARY_TABLE (field1, field1, field1)
SELECT (field1, field1, field1) FROM YOUR_TABLE;
于 2012-07-14T19:07:35.880 回答