Martin Schneider Il commento di cui sopra mi ha aiutato ad arrivare alla risposta. Non era specifico per MySQL, ma piuttosto l'approccio logico per risolvere il problema, quindi includo la query che sto usando di seguito per aiutare chiunque si imbatterà in questo in futuro:
SELECT * FROM holiday
WHERE staffid = {staff id}
AND '{date on monday}' <= DATE(enddate)
AND '{date on friday}' >= DATE(startdate)
Sostituisci il testo tra parentesi graffe come richiesto.