Jednym z popularnych i przydatnych operatorów warunkowych w SQL jest operator in. Korzystając z operatora, możemy uzyskać wartość logiczną, jeśli określona wartość znajduje się na liście.
Ten samouczek przeprowadzi Cię przez operatora w i jak go używać do tworzenia niestandardowych warunków dla zapytań SQL.
Zanim zaczniemy, zakładamy, że masz zainstalowany i skonfigurowany serwer MySQL w swoim systemie, a także masz przykładową bazę danych, nad którą możesz pracować.
Aby uzyskać przykładową wersję bazy danych MySQL, rozważ bazę danych Sakila z zasobu podanego poniżej:
https: // dev.Mysql.com/doc/index-inni.html
Podstawowe użycie
Jeśli nie jesteś znany, MySQL w instrukcji pozwala ustalić, czy wartość znajduje się w zestawie wartości. Zwraca głównie wartość przypominającą boolean z 1 (true), jeśli wartość znajduje się w zestawie i 0 (false), jeśli wartość nie ma w zestawie.
Ogólna składnia stwierdzenia IN to:
Wybierz nazwę kolumnową z nazwy Table_name gdzie (wyrażenie | nazwa_pełna) w („wartość1, wartość2…)Jak widać z powyższej składni, lista wartości jest oddzielona przecinkami wewnątrz operatora w.
Możesz użyć wyrażenia lub nazwy kolumny z operatorem IN wewnątrz instrukcji Where.
NOTATKA: Unikaj łączenia cytowanych wartości, takich jak ciągi i wartości niezachwiane, takie jak liczby, ponieważ porównanie różni się dla różnych typów. Przykład nieprawidłowego użycia zapytania IN pokazano poniżej:
Wybierz nazwę kolumny z nazwy Table_name Where Value1 w („A”, 10, 10);Po wykonaniu zapytania jako powyższego:
Wartości zerowe zwracają wartość zerową.
Przykładowy przypadek użycia
Zilustrujmy, jak korzystać z operatora w przykładach.
Zacznijmy od prostego porównania, które nie wymaga bazy danych. Rozważ następujące stwierdzenie:
Wybierz 10 cali (5, 15, 25, 35);Jeśli wykonasz powyższe zapytanie w powładzie MySQL, otrzymasz 0 (false), wskazując, że wartość 10 nie ma w dostarczonym zestawie wartości.
Mysql> Wybierz 10 cali (5, 15, 25, 35);Sprawa jest również prawdziwa, jeśli wartość, której szukamy. W takim przypadku 1 (true) jest zwracane jak ilustrowane w pytaniu poniżej:
Wybierz 35 cali (5, 15,25,35);Wyjście będzie jak pokazano poniżej:
Mysql> Wybierz 35 cali (5, 15,25,35);Załóżmy, że masz tabelę o nazwie Film (patrz baza danych Sakila) z rzędami, jak pokazano poniżej:
+----------------------+Używamy operatora In, aby znaleźć tytuły, które mają czas wynajmu 3, jak pokazano w pytaniu poniżej:
Wybierz Film_ID, tytuł, Rental_Duration, ocena z filmu, gdzie Rental_Duration w (3) limit 5;Po wykonaniu powyższego zapytania otrzymasz wszystkie filmy (ograniczone do 5), w których rentowność jest równa 3. Oto wyjście próbki, jak pokazano poniżej:
MySQL> Wybierz film_id, tytuł, wynajęcie_duration, ocena z filmu, gdzie Rental_duration w (3) limit 5;Jak widać z powyższego przykładu, możemy użyć operatora In, aby dostosować nasz wynik.
Wniosek
Ten samouczek pokazał, jak korzystać i wdrażać MySQL w operator, aby uzyskać dostosowane wyniki.