Przyjmijmy następujące:Utwórz tabelę inline SQL w locie (za wyjątkiem lewej przyłączyć)
Tabela A
id | value
----------
1 | red
2 | orange
5 | yellow
10 | green
11 | blue
12 | indigo
20 | violet
Mam listę identyfikatorów (10, 11, 12, 13 , 14), które można wykorzystać do wyszukania identyfikatorów w tej tabeli. Ta lista identyfikatorów jest generowana w moim interfejsie.
Używając czysto SQL, muszę wybrać identyfikatory z tej listy (10, 11, 12, 13, 14), które nie mają wpisów w Tabeli A (łączenie w kolumnie "identyfikator"). Rezultatem powinien być zestaw wyników id 13 i 14.
Jak mogę to zrobić, używając tylko SQL? (Poza tym chciałbym uniknąć stosowania procedury przechowywanej, jeśli to możliwe).
Jedyne podejście, jakie mogę wymyślić, to coś, co spowoduje utworzenie wbudowanej tabeli SQL w locie, aby tymczasowo zatrzymać moją listę identyfikatorów. Jednak nie mam pojęcia, jak to zrobić. czy to możliwe? Czy istnieje lepszy sposób?
Dzięki! :)
To nie jest bardzo jasne. Jeśli Twoje identyfikatory nie znajdują się w innej tabeli, nie ma nic do przyłączenia się. – Cfreak
Dokładnie. :) Na tym polega problem! – rinogo
Co jest nie tak z 'NOT IN ()'? –
Cfreak