Situatie: Ik heb twee tabellen Contract en Feestdag waarin zich bevinden:
- sleutel
- begindatum
- einddatum
In de tabel Contract zit ook nog een referentiele sleutel naar een medewerker.
In de tabel Feestdag zijn alle velden altijd ingevuld, in de tabel Contract kan de einddatum NULL zijn, iemand kan namelijk een dienstverband voor onbepaalde tijd hebben.
Ik wil een query maken die voor een bepaalde persoon de voor hem geldende feestdagen ophaalt. Voor de contracten die een einddatum hebben, is dit geen probleem namelijk:
Hoe moet ik echter een query maken als ik vantevoren niet weet of de einddatum van een contract bekend is? De volgende vergelijking:
geeft namelijk altijd 0 resultaten terug (logisch).
- sleutel
- begindatum
- einddatum
In de tabel Contract zit ook nog een referentiele sleutel naar een medewerker.
In de tabel Feestdag zijn alle velden altijd ingevuld, in de tabel Contract kan de einddatum NULL zijn, iemand kan namelijk een dienstverband voor onbepaalde tijd hebben.
Ik wil een query maken die voor een bepaalde persoon de voor hem geldende feestdagen ophaalt. Voor de contracten die een einddatum hebben, is dit geen probleem namelijk:
code:
1
2
3
4
| SELECT * FROM Feestdag WHERE Feestdag.Begindatum >= Contract.Begindatum AND Feestdag.Einddatum <= Contract.einddatum AND Contract.Medewerkernummer = 1 |
Hoe moet ik echter een query maken als ik vantevoren niet weet of de einddatum van een contract bekend is? De volgende vergelijking:
code:
1
| SELECT * FROM Feestdag WHERE Einddatum <= Null |
geeft namelijk altijd 0 resultaten terug (logisch).