Voor een schoolopdracht moet ik een SQL-query maken, die alle contracten, die een medewerker met medewerkernummer 13 in de maand mei 2002 bij een bedrijf heeft, moet teruggeven.
Hiervoor is benodigd de tabel contract. In deze tabel wordt het medewerkerID bijgehouden en wordt alleen de begindatum van dat contract bijgehouden, de einddatum is overbodig.
De query die ik nu heb, is:
Wanneer een medewerker voor het begin van de maand nog geen contracten heeft, dan loopt de query dus spaak. Ik heb echter nog geen andere oplossing kunnen vinden.
Hiervoor is benodigd de tabel contract. In deze tabel wordt het medewerkerID bijgehouden en wordt alleen de begindatum van dat contract bijgehouden, de einddatum is overbodig.
De query die ik nu heb, is:
code:
1
2
3
4
5
6
7
8
| SELECT * FROM Contract
WHERE MedewerkerID = 13
AND Begindatum <= #06/01/2002#
AND Begindatum >=
(SELECT Max(Begindatum) FROM Contract
WHERE MedewerkerID = 13
AND Begindatum <= #05/01/2002#)
ORDER BY Begindatum |
Wanneer een medewerker voor het begin van de maand nog geen contracten heeft, dan loopt de query dus spaak. Ik heb echter nog geen andere oplossing kunnen vinden.