Hallo Commuinty,
ich möchte mit SQL Server 2014 eine Kreuztabelle erstellen.
Das soll ermittelt werden:
Es soll ermittelt werden, wie viel Umsatz jeder Mitarbeiter pro Jahr (2010 - 2015) gemacht hat.
Der SQL-Code:
Leider ist das Ergebnis nicht das, was ich erwartet habe. Im Wertebereich werden nämlich einfach nur die Jahre ausgegeben - statt den Umsätzen, die ich eigentlich erwartet hätte.
Mitarbeiter 2010 2011 2012 2013 2014 2015
Franz Löffler 2010 2011 2012 2013 2014 2015
Hannelore Werner 2010 2011 2012 2013 2014 2015
Helmut Schuster 2010 2011 2012 2013 2014 2015
Ilse Meyer 2010 2011 2012 2013 2014 2015
Jonathan Werle 2010 2011 2012 2013 2014 2015
Maike Sauer 2010 2011 2012 2013 2014 2015
Ralf Schmidt 2010 2011 2012 2013 2014 2015
Wo ist mein Fehler?
Vielen Dank im Voraus,
Gruß zachy
ich möchte mit SQL Server 2014 eine Kreuztabelle erstellen.
Das soll ermittelt werden:
Es soll ermittelt werden, wie viel Umsatz jeder Mitarbeiter pro Jahr (2010 - 2015) gemacht hat.
Der SQL-Code:
Code:
SELECT
Mitarbeiter,
2010 AS '2010',
2011 AS '2011',
2012 AS '2012',
2013 AS '2013',
2014 AS '2014',
2015 AS '2015'
FROM
(
SELECT
m.mit_Vorname + ' ' + m.mit_Nachname AS Mitarbeiter,
a.art_Preis_VK * bd.bsd_Menge AS Umsatz,
YEAR(b.bst_Datum) AS Jahr
FROM tbl_Mitarbeiter AS m
INNER JOIN tbl_Bestellungen AS b
ON m.mit_ID = b.bst_Mitarbeiter_fi
INNER JOIN tbl_Bestelldetails AS bd
ON b.bst_ID = bd.bsd_bst_ID_fi
INNER JOIN tbl_Artikel AS a
ON bd.bsd_art_ID_fi = a.art_ID
) AS Umsaetze
PIVOT
(
SUM(Umsaetze.Umsatz)
FOR Umsaetze.Jahr IN ([2010],[2011],[2012],[2013],[2014],[2015])
) AS Umsatz_Pro_Jahr
ORDER BY Mitarbeiter;
Leider ist das Ergebnis nicht das, was ich erwartet habe. Im Wertebereich werden nämlich einfach nur die Jahre ausgegeben - statt den Umsätzen, die ich eigentlich erwartet hätte.
Mitarbeiter 2010 2011 2012 2013 2014 2015
Franz Löffler 2010 2011 2012 2013 2014 2015
Hannelore Werner 2010 2011 2012 2013 2014 2015
Helmut Schuster 2010 2011 2012 2013 2014 2015
Ilse Meyer 2010 2011 2012 2013 2014 2015
Jonathan Werle 2010 2011 2012 2013 2014 2015
Maike Sauer 2010 2011 2012 2013 2014 2015
Ralf Schmidt 2010 2011 2012 2013 2014 2015
Wo ist mein Fehler?
Vielen Dank im Voraus,
Gruß zachy