Pokud váš rezervační formulář vyzve k zadání $start a $end datum/časy pro rezervaci, tento dotaz sdělí, které notebooky jsou dostupné během období určeného těmito dvěma daty:
SELECT items.id, items.name
FROM items
LEFT JOIN types ON items.type = types.id
LEFT JOIN reservations ON reservations.item_id = items.id
WHERE (((reservations.endDate NOT between $start AND $end) and
(reservations.startDate NOT between $start AND $end)) or
(reservations.id IS NULL)) and
(types.id = $laptop_type_id)
První dva between
klauzule najde všechny notebooky, jejichž data zahájení/ukončení nespadají do požadovaných dat zahájení/ukončení – např. jsou rezervované, ale jsou dostupné v určeném časovém rozmezí. Nulová kontrola najde všechny notebooky, které nejsou vůbec rezervované. A kontrola types.id omezuje vyhledávání pouze na notebooky.