Ich benutze dieses Forum nun schon seit einiger Zeit, um Antworten auf einige SQL-bezogene Fragen zu finden. Jetzt ist es an der Zeit, eine Frage zu stellen, die ich schon seit einiger Zeit zu klären versuche.
Ich habe zwei Tabellen (Produkt und Quelle).
Ich möchte einen SQL SELECT erstellen, um eine Liste von Datensätzen aus der Quelle und einen zusätzlichen Datensatz aus dem Produkt (eine SUMME des Preises) abzurufen. Die Tabelle, die ich gerne sehen würde, sollte etwa so aussehen:
quelle.quelle_id | quelle.ort | quelle.quelle_name | quelle.quelle_beschreibung | quelle.quelle_datum | quelle.preis | SUM(produkt.preis) | SUM(produkt.preis) WHERE produkt.menge < 1 (in dieser letzten Spalte bleibe ich stecken).
source.location und product.location sind miteinander verknüpft.
Dieser Code funktioniert und liefert das gewünschte Ergebnis:
SELECT s.source_id
, s.location
, s.source_name
, s.source_description
, s.source_date
, s.source_price
, p2.Total
, sum(p1.price) as SumProductSold
FROM source s
JOIN product p1
on s.location = p1.location
JOIN
(
SELECT location, sum(price) as Total
FROM product
GROUP BY location
) p2
on s.location = p2.location
WHERE p1.quantity < 1
GROUP BY s.source_id, s.location, s.source_name
, s.source_description, s.source_date, s.source_price, p2.Total
Danke, bluefeet!!