SELECT結果が複数存在する場合にINSERTする方法

実現したいこと

素人質問にてすいません。
SQL Serverにて下記のような場合のSQL構文を教えてください。

前提

下記2つのTBLが存在する状態で、ITEM_HISTORYテーブルのうち、色が「黒」のレコードだけをITEMテーブルに追加したいです。

ITEMテーブル

ID 商品名 価格
1 鉛筆 100
2 はさみ 200
3 300

ITEM_HISTORYテーブル

商品名 価格
のり 100
カッター 200
ペン 300
ホチキス 400

試したこと

下記SQLを実行すると、「サブクエリは複数の値を返しました。~」とエラーが出てしまいます。(SELECTの結果が複数出てしまうため)
どのようなSQLだとよろしいでしょうか。

INSERT INTO ITEM
SELECT NEWID(),商品名,価格,色 FROM ITEM_HISTORY
WHERE 色='黒'

コメントを投稿

0 コメント