Meine Datenbank sieht wie folgt ausMySQL Hinzufügen und mehrere Spalten Ein Wählen
Tabellenname: Order Details
id oid pid pquantity pprice
--------------------------------------
1 1 5 2 10
2 1 6 3 5
3 1 7 1 20
5 2 8 1 5
6 2 9 1 5
7 3 5 5 10
Tabellenname: Aufträge
id odiscount oshipping
----------------------------
1 5 5
2 0 5
3 0 5
Ich möchte für den Rechnungswert erhalten jede Bestellung. (pquantity*pprice)-odiscount+oshipping
. Der schwierige Teil ist, dass jede Bestellung mehrere Einträge in den Bestelldetails enthalten kann. Ich kann also nicht herausfinden, wie ich mich darum kümmern soll. Das Endergebnis sollte
oid total
1 55
2 15
3 55
Ich habe versucht, dies die folgende SQL verwenden, aber ich bin nicht in der Lage, herauszufinden, wie mehrere Zeilen, um Details zu berücksichtigen.
SELECT SUM((orderdetails.pprice*orderdetails.pquantity) - orders.odiscount + orders.oshipping) FROM orders LEFT JOIN orderdetails ON orderdetails.oid = orders.id GROUP BY orders.id
Was ist falsch bei der Verwendung einer Unterabfrage? – sagi
Ich stimme zu, dass dies wahrscheinlich der Weg ist, aber ich bin sehr verwirrt über die Einstellung zu Kommentaren. – Strawberry
@Strawberry Sagi gibt routinemäßig eine Menge Kommentare zu meinen Antworten ab und schafft so eine Konversation über nichts, mit der Hoffnung, dass seine Antwort makelloser und damit korrekter erscheint als die aller anderen. Kommentar: Diese Taktik scheint wirklich gut zu funktionieren (obwohl ich sie nicht benutze). –