Ik heb een tabel die oa de volgende velden bevat, dag, maand, jaar en levering. Van deze tabel wil ik per dag de waarde van 2013 en 2014 naast elkaar hebben staan. In tbl_EParameter.ZMaand staat de maand waarvoor ik de warde wil zien.
Hiervoor heb ik de volgende query:
SELECT Dag as Dag, CASE Jaar WHEN 2013 THEN Levering END AS '2013', CASE Jaar WHEN 2014 THEN Levering END AS '2014' FROM tbl_Levering INNER JOIN tbl_EParameter ON (Maand = tbl_EParameter.ZMaand) ORDER BY Dag
De uitkomst gaat goed, echter ik krijg twee regels voor een dag, één voor 2013 en één voor 2014
Als ik deze uitvoer op de tabel dan krijg ik per maand wel één record:
SELECT Maand as Maand, SUM(CASE Jaar WHEN 2013 THEN Levering END) AS '2013', SUM(CASE Jaar WHEN 2014 THEN Levering END) AS '2014' FROM tbl_Levering Group BY Maand
Als ik een group by doe op Dag, dan zie ik alleen 2013 waarden. Wat doe ik niet goed.
Hiervoor heb ik de volgende query:
SELECT Dag as Dag, CASE Jaar WHEN 2013 THEN Levering END AS '2013', CASE Jaar WHEN 2014 THEN Levering END AS '2014' FROM tbl_Levering INNER JOIN tbl_EParameter ON (Maand = tbl_EParameter.ZMaand) ORDER BY Dag
De uitkomst gaat goed, echter ik krijg twee regels voor een dag, één voor 2013 en één voor 2014
Als ik deze uitvoer op de tabel dan krijg ik per maand wel één record:
SELECT Maand as Maand, SUM(CASE Jaar WHEN 2013 THEN Levering END) AS '2013', SUM(CASE Jaar WHEN 2014 THEN Levering END) AS '2014' FROM tbl_Levering Group BY Maand
Als ik een group by doe op Dag, dan zie ik alleen 2013 waarden. Wat doe ik niet goed.