INSERT INTO @table(a,b,c,d)
SELECT a,b,c,d
FROM table1
UNION
SELECT a,b,c,d
FROM table2
SELECT ステートメントを使用してデータを挿入する場合、Values 句を使用する必要はありません。したがって、VALUES
を削除しました 少しずつ、両方の SELECT クエリから返される行の UNION を実行するだけです。
SQL サーバーは
のような INSERT ステートメントの構文をサポートしていますINSERT INTO Table_Name(Col1, COl2. Col3...)
SELECT Col1, COl2. Col3...
FROM Other_Table_Name
これにより、select ステートメントによって返された結果セットがターゲット テーブルに挿入されます。あなたの場合、結果は2つの選択のUNIONであるため、単一の選択と何ら変わりはありません。