MySQL UPDATE mit SELECT SUM aus einer anderen Tabelle

Ich habe zwei Tische:ITEMS mit mengen und stückpreis (id | name | bestell_id | qt | stückpreis) und tabelleORDERS.

Ich möchteUPDATE Tabelleorders und platzieren inorders.total_price sum of multiplications qt*unit_price Für die gleichen Bestellungen erhalten Sie den Gesamtpreis der Bestellung.

DasSELECT Die Abfrage in der Artikeltabelle ist recht einfach und funktioniert einwandfrei, wenn für alle Artikel in derselben Bestell-ID Summen angegeben werden:

SELECT SUM(items.qt*items.unit_price) from items GROUP by items.order_id

aber ich kann diesen Wert nicht in meine einfügenORDERS Tabelle. Ich konnte diese Arbeit nicht machen:

UPDATE orders, items SET orders.total_price = (SELECT SUM(items.qt*items.unit_price)
FROM items GROUP BY items.order_id) WHERE orders.id = items.order_id

es kehrt zurück"Subquery returns more than 1 row"

Ich fand eine sehr ähnliche FrageHier aber die antwort hat auch bei mir nicht geklappt:

UPDATE orders SET orders.t_price = (SELECT SUM(items.qt*items.unit_price) from items WHERE orders.id = items.order_id)

Antworten auf die Frage(1)

Ihre Antwort auf die Frage