Einzelnen Beitrag anzeigen

Hobbycoder

Registriert seit: 22. Feb 2017
982 Beiträge
 
#1

Count in SQL mit Left Join

  Alt 23. Jan 2025, 23:19
Datenbank: MariaDB • Version: 11.5.2 • Zugriff über: Zeos 8.0.0
Hi,

ich will die Summen von Artikeln nach Kunden auflisten.
Die Netto/MwSt/Brutto sind nur in der Tabelle Positionen vorhanden. Kundennummer lediglich in der Tabelle Kunden. Es wird alles nur über die Guid's referenziert.
Soweit so gut.

Lediglich bei der Anzahl der Aufträge (Vorgänge) erhalte ich immer die Anzahl der Positionen.
Klar, weil das ja auch so in SQL-Abfrage steht.

Wie könnte ich in dieser Abfrage aber die Anzahl der Vorgänge erhalten?

Code:
SELECT
  SUM(A.Netto) AS Netto, SUM(A.MwSt) AS MwSt, SUM(A.Brutto) AS Brutto, COUNT(B.vorgangsnummer) AS Anzahl, Auftragguid, B.Firmenname, B.kundenguid, C.kundennummer
FROM Positionen AS A
  LEFT JOIN Vorgang AS B ON A.auftragguid=B.guid
  LEFT JOIN Kunden AS C ON B.kundenguid=C.guid
WHERE B.Fakturiert<>0 AND (B.vorgangstype=4 OR B.vorgangstype=5 OR B.vorgangstype=6) AND B.FakturiertAm>='2025-01-01' AND B.FakturiertAm<='2025-01-31'
GROUP BY C.guid ORDER BY SUM(A.netto) DESC;
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat