2

SELECTおよびINSERT INTOコマンドを組み合わせて、結果をSQL Serverの一時テーブルに挿入するにはどうすればよいですか?

このようなもの:

INSERT INTO #TempTable 
    SELECT * FROM MyTable;
4

3 に答える 3

9

2つの選択肢があります。最初の方法は、一時テーブルを作成してから、次のようにINSERT INTO...を使用することです。SELECT

CREATE TABLE #temp (
  Col1 ...
);

INSERT INTO #temp
SELECT * FROM OtherTable;

2番目のオプションは、新しい一時テーブルに直接挿入することです。

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 に答える