SQL Abfrage mit 3 tabellen



  • Hab 3 tabellen,

    Tabelle 1: (produkte)
    produkt, code

    Tabelle 2: (eingangsbuchungen)
    code, menge

    Tabelle 3: (ausgangsbuchungen)
    code, menge

    will nun die aktuelle menge jedes artikels feststellen (inventur) dazu die MySql abfrage:

    SELECT
     produkt.Code, Bezeichnung, 
     sum(verkauf_pos.Menge) AS Bestand1, 
     sum(lieferung_pos.Menge) AS Bestand2 
     FROM produkt  
     LEFT JOIN verkauf_pos ON  verkauf_pos.Code=produkt.Code 
     LEFT JOIN lieferung_pos ON lieferung_pos.Code=produkt.Code 
     GROUP BY produkt.Code 
     ORDER BY Bezeichnung
    

    leider ist im ergbnis Bestand2 immer 0, warum? 😕 und wichtiger, was dagegen machen?



  • hier ne bessere abfrage :

    "SELECT "+
    "produkt.Code, Bezeichnung, "+
    "sum(lieferung_pos.Menge) - sum(verkauf_pos.Menge) AS Bestand "+
    "FROM produkt  "+
    "LEFT JOIN lieferung_pos ON lieferung_pos.Code=produkt.Code "+ 
    "LEFT JOIN verkauf_pos ON  verkauf_pos.Code=produkt.Code "+
    "GROUP BY produkt.Code "+
    "ORDER BY Bezeichnung";
    

Anmelden zum Antworten