OK, jest tak, że mam dwie tabele. Dla ułatwienia powiem, że wyglądają tak(o strukturę chodzi):
employeeID | Date
--------------------------
1 | 2009-01-05
--------------------------
1 | 2009-01-06
--------------------------
2 | 2009-01-04
I teraz mam dwie tabele: a i b.
Chcę wybrać te dane z tabeli b, których nie ma w tabeli a.
Niby prosta sprawa, ale zapytanie:
select distinct employeeID, date
from b
where date not in(select Date from a where employeeID = b.employeeID)
trwa ponad 20 sekund przy 13000 rekordów w tabeli b i 1000 rekordów w tabeli a.
To jest duuuużo za długo.
Oczywiście jeśli pozbędę się słowa "not", to wtedy zapytanie działa od razu, no tylko nie zwraca tego, co chcę :)
Wobec tego, jak to mogę zrobić inaczej? Żeby działo się to natychmiastowo?