Operator SQL NOT EXISTS będzie działał zupełnie odwrotnie niż operator EXISTS. Służy do ograniczenia liczby wierszy zwracanych przez instrukcję SELECT.
NOT EXISTS w SQL Server sprawdzi Podquery dotyczące istnienia wierszy, a jeśli nie ma wierszy, zwróci TRUE, w przeciwnym razie FALSE. Lub możemy po prostu powiedzieć, że operator SQL Server Not Exists zwróci wyniki dokładnie odwrotne do wyniku zwróconego przez zapytanie podrzędne.,
wskazówka: przed przejściem do tego przykładu, proponuję zapoznać się z artykułem Subquery SQL, aby zrozumieć projektowanie subquery i parsowanie zapytań.
składnia SQL NOT EXISTS
podstawowa składnia NOT EXISTS w SQL serverze może być zapisana jako:
SELECT FROM WHERE NOT EXISTS (Write Subquery to Check)
- Columns: pozwala nam wybrać ilość kolumn z tabel. Może to być jeden lub więcej.
- źródło: jedna lub więcej tabel obecnych w bazie danych. Połączenia SQL są używane do łączenia wielu tabel.
- Subquery: tutaj musimy dostarczyć Subquery., Jeśli zapytanie podrzędne zwróci true, zwróci rekordy, w przeciwnym razie nie zwróci żadnych rekordów.
w tym artykule pokażemy, jak używać operatora SQL Server NOT EXISTS z przykładami., W tym celu użyjemy pokazanych poniżej danych
SQL nie istnieje przykład 1
poniższe zapytanie znajdzie wszystkich pracowników obecnych w tabeli pracowników, których liczba jest mniejsza niż 1000
pozwól mi zmienić warunek nie istnieje jako sprzedaż<10000, oznacza to, że subquery zwróci wszystkie dostępne wiersze. NOT EXISTS zwróci zero rekordów, ponieważ zwróci dokładnie przeciwny wynik zapytania podrzędnego.,
wyjście
jak widzisz, zapytanie zwraca puste rekordy, ponieważ zapytanie podrzędne zwraca TRUE, a nie istnieje zwróci false. Pokażmy Ci jeszcze jeden przykład lepszego zrozumienia.
Pozwól mi zmienić warunek Na sprzedaż> 10000, co jest fałszywym warunkiem. Tak więc operator SQL NOT EXISTS zwróci wszystkie rekordy.
wyjście
jak widać na powyższym zrzucie ekranu, zwraca wszystkie wiersze., Ponieważ zapytanie podrzędne zwraca FALSE, oznacza to, że SQL Server NOT EXISTS zwróci TRUE
SQL Not Exists przykład 2
poniższe zapytanie SQL Server Not Exists znajdzie pracowników, których zawód nie jest ani wykwalifikowany, ani urzędniczy. Tutaj będziemy używać SQL w operatorze wewnątrz Subquery
wyjście
Dziękujemy za odwiedzenie naszego bloga