Erstens: "DISITNCT" sorgt dafür, dass keine doppelten Einträge ausgegeben werden.
Im folgenden Code kriegst du alle Dienstwagen, die im angegeben Zeitraum nicht belegt sind.
SQL-Code:
SELECT DISTINCT t.Dienst_PKW
FROM T_Daten t
WHERE t.Raum NOT IN
(SELECT x.Dienst_PKW
FROM T_Daten x
WHERE x.Anfang BETWEEN :StartTm AND :EndTm OR
x.Ende BETWEEN :StartTm AND :EndTm)
Für StartTm & EndTm musst du Parameter in deiner
Query anlegen.
Wie das umsetzen kannst steht dort:
datumpicker AND in AND sql AND abfrage AND einbauen
Einfacher geht's nur wenn du nur ein Datum pro Wagen hast.
SQL-Code:
SELECT DISTINCT t.Dienst_PKW
FROM T_Daten t
WHERE t.DATUM NOT BETWEEN :StartTm AND :EndTm
(Dürfte Probleme geben, wenn ein Wagen 2 Tage weg ist, aber nur das Startdatum angegeben ist)