Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

W tym blogu omówimy sposób filtrowania w SQL. Wyjaśnimy i pokażemy kilka przykładów wykorzystania warunków filtrowania, takich jak IN, NOT IN, LIKE i NOT LIKE .

Te warunki filtrowania służą do filtrowania danych wyjściowych z danych. Zamiast wybierać je za pomocą wielu wierszy poleceń, dostęp do danych będzie łatwiejszy.

Spis treści

Używanie operatorów IN i NOT IN do filtrowania danych w SQL

W tym przykładzie otrzymamy dane z identyfikatorów 1, 5 lub 7. Większość ludzi użyłaby warunków OR .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Jeśli chcesz uzyskać dane z większej liczby identyfikatorów, musisz napisać wiele warunków LUB. Możesz jednak użyć operatora IN, aby uzyskać żądane dane, zamiast wielokrotnie używać warunków OR .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Użycie tego warunku filtrowania da nam ten sam wynik, czyli dane z identyfikatorów 1, 5 lub 7. Wręcz przeciwnie, jeśli chcesz wyodrębnić dane ze wszystkich z wyjątkiem identyfikatorów 1, 5 i 7, najbardziej prawdopodobnie użyj warunku OR i <> (operator NOT EQUAL).

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Zamiast pisać długie polecenia, możemy użyć operatora NOT IN .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Z tym warunkiem filtrowania wyodrębnisz dane z wyjątkiem identyfikatorów 1, 5 i 7.

Korzystanie z tych warunków pozwoli Ci zaoszczędzić mnóstwo czasu, a jednocześnie jest znacznie lepszym sposobem pisania zamiast używania wielu warunków LUB .

Używanie operatorów LIKE i NOT LIKE do filtrowania danych w SQL

LIKE i NOT LIKE są podobne do operatorów IN i NOT IN. Zamiast wyodrębniać same dane , otrzyma część ciągu. Pamiętaj, że możesz używać symboli wieloznacznych lub znaków specjalnych, takich jak procent (%) i podkreślenie (_).

% oznacza , że ​​dopasuje wszystkie rekordy z podanym ciągiem. Jeśli dopasujemy 86 i %, pierwsze dwie cyfry powinny wynosić 86. Znajdzie więc wszystkie wartości zaczynające się od 86.

Ale jeśli umieścimy % po obu stronach 86, może on pochodzić z dowolnego miejsca. Może pochodzić z początku, końca lub środka. Więc znajdzie wszystkie wartości, które mają 86 na początku, w środku lub na końcu. 

Z drugiej strony _ pasuje tylko do 1 znaku. Jeśli użyjesz 86 i _ (86_), wyszuka wartości, które mają 86 na 1. i 2. pozycji, takie jak 860, 861, 862 itd. Jeśli użyjesz _ i 86 (_86), będzie szukać dowolnych wartości z 86 na 2. i 3. pozycji. 

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

W tym przykładzie użyjemy operatora LIKE , aby uzyskać dane, które mają ciąg Mark . Musimy po prostu umieścić Mark pomiędzy % , aby otrzymać dane wyjściowe zawierające Mark

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Podobnie, jeśli nie chcemy wyodrębniać danych zawierających Mark , możemy użyć operatora NOT LIKE . Następnie umieść Marka pomiędzy %.

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Tym razem dane wyjściowe nie będą zawierały znaku Mark .

Używanie warunków filtrowania SQL w SSMS

Najpierw otworzymy nasze SSMS (SQL Server Management Studio).

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie załadujemy tabelę, z której będziemy korzystać. Pamiętaj, że używana przez nas baza danych to adventureworks2012, którą można znaleźć w witrynie Microsoft Documentation .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie kliknij Wykonaj .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie zobaczysz dane wyjściowe na karcie Wyniki.

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie przefiltrujemy dane wyjściowe na podstawie PersonType . Użyjemy polecenia wybierz odrębne . Zaznaczymy polecenie i klikniemy Wykonaj .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie zobaczysz dane wyjściowe pokazujące PersonType .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie wyodrębnimy rekordy z PersonType IN lub SP lub SC . W tym przypadku użyjemy warunku OR . Zaznaczymy polecenie i klikniemy wykonaj .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Zobaczysz wtedy, że liczba wierszy wynosi 19 254.

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Jednak zamiast warunku OR użyjemy operatora IN . Wpiszemy więc polecenie i zaznaczymy je. Następnie kliknij wykonaj .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

To da nam taką samą liczbę wierszy, czyli 19 254 .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Jeśli chcemy wyodrębnić wszystkie dane z wyjątkiem IN , SP i SC , użyjemy operatora NOT IN . Wpiszmy więc polecenie i zaznaczmy je. Następnie kliknij wykonaj .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

To da nam wszystkie dane z wyjątkiem tych, które pochodzą z IN , SP i SC .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Następnie użyjemy operatora LIKE do wyodrębnienia danych zawierających Rob z kolumny FirstName . Użyjmy polecenia, zaznaczmy je i kliknijmy Wykonaj .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

W rezultacie zobaczymy, że dane wyjściowe zawierają teraz Rob w kolumnie FirstName . Ponieważ użyliśmy %, pokaże wszystkie dane, które mają ciąg Rob .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Na koniec użyjemy operatora NOT LIKE . W tym przykładzie chcemy wyodrębnić dane, które nie zawierają Rob . Wpiszemy więc kod, zaznaczymy go, a następnie klikniemy Wykonaj.

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

To da nam dane wyjściowe, które nie pokazują żadnego rekordu zawierającego Roba w kolumnie FirstName .

Filtruj w SQL, używając IN, NOT IN, LIKE i NOT LIKE

Wniosek

Podsumowując, omówiliśmy sposób filtrowania w języku SQL przy użyciu operatorów IN, NOT IN, LIKE i NOT LIKE. Nauczyłeś się ich użycia i różnic, a także w jakiej sytuacji możesz ich użyć.

Te operatory są bardziej wydajne niż użycie warunku OR . Możesz użyć tych operatorów do filtrowania i wyodrębniania danych z bazy danych, zamiast używać dłuższych poleceń, więc upewnij się, że prawidłowo wykorzystujesz te warunki filtrowania.

Wszystkiego najlepszego,

Hafiz

Leave a Comment

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.

Funkcje zbierania w Microsoft Power Automate

Funkcje zbierania w Microsoft Power Automate

Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.

Oceń wydajność kodu DAX w DAX Studio

Oceń wydajność kodu DAX w DAX Studio

Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Jak zapisać i załadować plik RDS w R

Jak zapisać i załadować plik RDS w R

Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.