Gude aus dem schönen Mittelhessen!
Ich zermatere mir seit ein paar Tagen das Gehirn auf der Suche nach einer halbwegs eleganten (oder zumindest funktionierenden) Lösung für folgendes Problem:
Für eine Umsatzauswertung wird eine Ausgabe in folgendem Format benötigt:
Artikel | Umsatz aktuelles | Umsatz Vorjahr | Menge aktuell | Menge Vorjahr
Die für diese Auswertung benötigten Daten werden aus zwei Tabellen bezogen: AAGFAKT und AAGFAKTPOS
In der Tabelle Aufträge befinden sich die für die Fakturierung notwendigen Daten wie Rechnungsdatum etc. aus der Tabelle AAGFAKTPOS werden die Daten der Artikel bezogen (wie z.B. Preis und Menge).
Die Daten für den aktuellen Monatsumsatz zu beziehen ist kein größeres Problem (siehe Codeschnipsel weiter unten), wie ich die Daten für den Vorjahreszeitraum im gleichen Statement beziehen kann um damit die Spalten "Umsatz Vorjahr" und "Menge Vorjahr" zu befüllen scheitert bei mir anscheinend gerade an einer Denkblockade....
Ich bin für jeden Hinweis dankbar!
Ich zermatere mir seit ein paar Tagen das Gehirn auf der Suche nach einer halbwegs eleganten (oder zumindest funktionierenden) Lösung für folgendes Problem:
Für eine Umsatzauswertung wird eine Ausgabe in folgendem Format benötigt:
Artikel | Umsatz aktuelles | Umsatz Vorjahr | Menge aktuell | Menge Vorjahr
Die für diese Auswertung benötigten Daten werden aus zwei Tabellen bezogen: AAGFAKT und AAGFAKTPOS
In der Tabelle Aufträge befinden sich die für die Fakturierung notwendigen Daten wie Rechnungsdatum etc. aus der Tabelle AAGFAKTPOS werden die Daten der Artikel bezogen (wie z.B. Preis und Menge).
Die Daten für den aktuellen Monatsumsatz zu beziehen ist kein größeres Problem (siehe Codeschnipsel weiter unten), wie ich die Daten für den Vorjahreszeitraum im gleichen Statement beziehen kann um damit die Spalten "Umsatz Vorjahr" und "Menge Vorjahr" zu befüllen scheitert bei mir anscheinend gerade an einer Denkblockade....
Ich bin für jeden Hinweis dankbar!
Code:
select AAGFAKTPOS.ARTNR1, AAGFAKTPOS.ABEZ1, SUM(AAGFAKTPOS.BERECHMENGE) as Menge, SUM(AAGFAKTPOS.PREIS) as Umsatz
from AAGFAKT
inner join AAGFAKTPOS
on AAGFAKT.LFDFAKTNR = AAGFAKTPOS.LFDFAKTNR
where
AAGFAKT.FAKTDATUM BETWEEN
CONVERT(datetime, '01.09.2014 00:00:00', 104)
AND CONVERT(datetime, '30.09.2014 23:59:59', 104)
group by AAGFAKTPOS.ABEZ1, AAGFAKTPOS.ARTNR1
order by AAGFAKTPOS.ABEZ1