Je demande de l'aide sur le problème suivant: J'ai deux tables Table_1
les colonnes sont itemid
, locationid
, quantity
Les colonnes Table_2
sont itemid
, location1
, location2
, location3
Je souhaite copier des données de Table_1
(colonne quantity
uniquement) dans Table_2
(dans la colonne location1
). Les itemid
sont identiques dans les deux tables (Table_1
possède des ID d’article en double), c’est la raison pour laquelle je souhaite copier dans une nouvelle table et conserver toutes les quantités sur une seule ligne avec chaque emplacement sous forme de colonne. J'utilise la requête ci-dessous mais cela ne fonctionne pas
INSERT INTO
Table_2(location1)
(
SELECT qty
FROM Table_1
WHERE locationid = 1 AND Table_1.locationid = Table_2.locationid
)
Si table_2
est vide, essayez l'instruction insert suivante:
insert into table_2 (itemid,location1)
select itemid,quantity from table_1 where locationid=1
Si table_2
contient déjà les valeurs itemid
, essayez cette instruction de mise à jour:
update table_2 set location1=
(select quantity from table_1 where locationid=1 and table_1.itemid = table_2.itemid)
INSERT INTO `test`.`product` ( `p1`, `p2`, `p3`)
SELECT sum(p1), sum(p2), sum(p3)
FROM `test`.`product`;