Hallo,
ich habe folgendes Problem:
Ich möchte neben dem Umsatz und der Absatzmenge von Produkten den "Nettoerlös" ausgegeben bekommen. Dieser ergibt sich aus der Differenz zwischen Einkaufspreis*Menge und Verkaufspreis * Menge.
Soweit funktioniert die Abfrage, aber was fehlt ist der Nettoerlös.
Diese Abfrage liefert mir das Ergebnis aber nicht nach Artikel gruppiert. Füge ich ein group by b.artikelnummer hinzu, dann bekomme ich eine Fehlermeldung.
Wo liegt mein Denkfehler?
ich habe folgendes Problem:
Ich möchte neben dem Umsatz und der Absatzmenge von Produkten den "Nettoerlös" ausgegeben bekommen. Dieser ergibt sich aus der Differenz zwischen Einkaufspreis*Menge und Verkaufspreis * Menge.
Code:
select b.Artikelnummer, SUM(b.menge) as Absatzmenge, count(distinct b.adressnummer) as AnzahlKunden, ROUND(SUM(b.Menge*b.Einzelpreis),2) as Umsatz
from Bestellungen b
where convert(date,b.datum) >='01.01.2013' and convert(date,b.datum) < '01.01.2014'
group by b.Artikelnummer
having ROUND(SUM(Menge*Einzelpreis),2)>0
order by b.Artikelnummer
Soweit funktioniert die Abfrage, aber was fehlt ist der Nettoerlös.
Code:
select b.Artikelnummer, ((b.Einzelpreis*b.Menge)-(a.EinkaufsPreis*b.Menge)) as Test
from Artikel a, bestellungen
b where a.ArtNr = b.Artikelnummer
Diese Abfrage liefert mir das Ergebnis aber nicht nach Artikel gruppiert. Füge ich ein group by b.artikelnummer hinzu, dann bekomme ich eine Fehlermeldung.
Wo liegt mein Denkfehler?