Merhaba arkadaşlar benim bir konuda yardımlarınıza ihtiyacım var

http://dosyadepo.com/5Ib
yukarıdaki sql 2012 için db yedeğim.


db de 3 tablo ile iş var.

araçlar,

rezervasyon

hareket,

kullanıcı yarının tarihini seçip sorgula dediğinde yarının tarihinde rezervasyonu olan araçlar ve tarihi önemsiz olup alınmış ama getirilmemiş araçlar Müsait araçlar listesinde görünmeyecek.

SELECT AracId, MarkaModel, Plaka, Sil, Durum
FROM dbo.Araclar
WHERE (Durum = 'UYGUN') AND (EXISTS
(SELECT AracId, AlımTarihi, TeslimTarihi
FROM dbo.Hareket
WHERE (Araclar.AracId=Hareket.AracId ) AND (AlımTarihi IS NOT NULL) AND (TeslimTarihi IS not NULL)))
EXCEPT SELECT Araclar.AracId, RezervasyonAlimTarihi
FROM dbo.Rezervasyon,dbo.Araclar
WHERE (Araclar.AracId=Rezervasyon.AracId) AND (dbo.Rezervasyon.RezervasyonAlimTarihi = '2015-12-01');

bu kod ile denediğimde sıkıntılı oluyor

daha kolaylık olması açısından 3 tablo ve 3 tablonun birleşmesi gereken kriterler şu şekilde

SELECT AracId, MarkaModel, Plaka, Sil, Durum
FROM dbo.Araclar
WHERE (Sil = 0) AND (Durum = N'UYGUN')

-------------------

SELECT AracId, AlımTarihi, TeslimTarihi
FROM dbo.Hareket
WHERE (NOT (AlımTarihi IS NULL)) AND (NOT (TeslimTarihi IS NULL))

-----------------------

SELECT AracId, RezervasyonAlimTarihi, Onay
FROM dbo.Rezervasyon
WHERE (Onay = 0) OR (RezervasyonAlimTarihi = @KullanicininVerecegiTarih)

işte bu son 2 sorguya göre boşa çıkan araçlar ilk sorguya göre kullanıcı seçimine bırakılacak

bu konuda yardımlarınızı bekliyorum