Hallo Zusammen,
ich habe eine Tabelle, in der die Artikel und die Kundenbedarfe stehen. Jetzt möchte ich gerne mit einer
Query für jeden Disponenten folgende Daten holen:
ArtikelNr, Lieferungen die überfällig sind (Lieferdatum<aktuelles Datum), Summe der Mengen je Artikel für aktuellen Monat, Summe der Mengen je Artikel für nächsten Monat, Summe der Mengen je Artikel für übernächsten Monat.
Ich habe folgendes ausprobiert, aber neben der Tatsache, dass die Werte nicht stimmten, benötigt die
Query auch über 30min.... WIe kann ich das geschickter machen?
Delphi-Quellcode:
select concat(liefersituation.watenr,' ',liefersituation.tebez1) as 'Artikel Bezeichnung', sum(t1.ltrest) as Rückstand, sum(t2.ltrest) as 'Bedarf aktueller Monat', sum(t3.ltrest) as 'Bedarf nächster Monat', sum(t4.ltrest) as 'Bedarf übernächster Monat' from liefersituation
left join liefersituation as t1 on t1.watenr=liefersituation.watenr and t1.ltlite<current_date
left join liefersituation as t2 on t2.watenr=liefersituation.watenr and month(t2.ltlite)=month(current_date)
left join liefersituation as t3 on t3.watenr=liefersituation.watenr and month(t3.ltlite)=month(current_date)+1
left join liefersituation as t4 on t4.watenr=liefersituation.watenr and month(t4.ltlite)=month(current_date)+2
where liefersituation.lpdivk='ssc' //Disponenten-Kürzel
group by liefersituation.watenr
order by liefersituation.watenr
Vielen Dank
Patrick
der group by stimmt nicht!
i.d.R. musst Du das groupen was Du im select anzeigst, wenn es keine agregatfunktion ist.
Bei MS
SQL würde die Anweisung gar nicht so gehen,
mysql macht hier was, aber wie Du schon gemerkt hast stimmt das Ergebnis nicht!