Falls du auch Zugriff auf eine Datumstabelle haben solltest, würde sich vielleicht ein ähnliches Konstrukt wie folgendes anbieten:
Code:
SELECT d.Datum FROM
(SELECT Datum from Datumstabelle WHERE year(Datum) = 2012 AND month(Datum) = 1) d
LEFT OUTER JOIN
(SELECT Zeitraum FROM tabelle WHERE lappenID = 2 AND year(Zeitraum) = 2012 AND month(Zeitraum) = 1 GROUP BY Zeitraum) t
ON d.Datum = t.Zeitraum
WHERE t.Datum is null
Bzw. wenn die Anzahl der Zeilen pro Datum (bei Tagen mit Daten) auch noch wichtig sein sollte:
Code:
SELECT d.Datum, b.Anz FROM
(SELECT Datum from Datumstabelle WHERE year(Datum) = 2012 AND month(Datum) = 1) d
LEFT OUTER JOIN
(SELECT Zeitraum, count(*) AS Anz FROM tabelle WHERE lappenID = 2 AND year(Zeitraum) = 2012 AND month(Zeitraum) = 1 GROUP BY Zeitraum) t
ON d.Datum = t.Zeitraum
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;