web-dev-qa-db-ja.com

別の選択クエリの結果を含むテーブルにデータを挿入する

次の問題に関するヘルプを探しています。2つのテーブルTable_1列がitemidlocationidquantityです

Table_2列はitemidlocation1location2location3です

Table_1quantity列のみ)からTable_2location1列に)にデータをコピーしたい。 itemidは両方のテーブルで同じです(Table_1にはアイテムIDが重複しています)。そのため、新しいテーブルにコピーし、各場所を列として1つの行にすべての数量を保持します。 。私は以下のクエリを使用していますが、動作しません

INSERT INTO 
Table_2(location1) 
(
 SELECT qty 
 FROM Table_1 
 WHERE locationid = 1 AND Table_1.locationid = Table_2.locationid
)
45
mmdel

table_2が空の場合、次の挿入ステートメントを試してください。

insert into table_2 (itemid,location1) 
select itemid,quantity from table_1 where locationid=1

table_2にはすでにitemid値が含まれているので、次の更新ステートメントを試してください。

update table_2 set location1=
(select quantity from table_1 where locationid=1 and table_1.itemid = table_2.itemid)
95
Aziz Shaikh
INSERT INTO `test`.`product` ( `p1`, `p2`, `p3`) 
SELECT sum(p1), sum(p2), sum(p3) 
FROM `test`.`product`;
0
Sanjit Majee