klaus: (MySQL) überschneidende Einträge filtern?

Beitrag lesen

Hallo,

ich habe einen Urlaubsplaner für die Mitarbeiter. In einer Tabelle stehen die Abwesenheiten, in einer Tabelle steht die Abwesenheitsarten (z.B. auch Schulung, Geschäftsreise, ...) mit den entsprechenden Farben und in einer Tabelle die Feiertage.

Diese möchte ich nun kombiniert anzeigen lassen.
Ich möchte nun aber diejenigen Feiertage aus der Ergebnisliste filtern, die in einen Urlaubseintrag fallen würden.
Nur wie könnte ich das bewerkstelligen?
Habt ihr vielleicht eine Idee?

Meine bisherige Abfrage sieht also wie folgt aus:

select
   a.idnr,a.bestaetigt,a.urlaubvon,a.urlaubbis,
   a.halbertag,c.bezeichnung,c.farbe
from urlaubdaten as a left join urlaubarten as c on a.artnr = c.artnr

where a.personalnummer='$personalnummer' AND a.urlaubvon like '$zeitraum-%' AND a.geloescht <> 'J'

UNION select
   '','J',feiertag AS urlaubvon,feiertag AS urlaubbis,'',
   feiertag_text AS bezeichnung,'gelb'
from feiertage

where feiertag like '2007%' order by urlaubvon