Samouczek MySQL

Strona główna MySQL Wprowadzenie do MySQL RDBMS MySQL

SQL MySQL

SQL MySQL WYBIERZ MySQL MySQL GDZIE MySQL I, LUB, NIE MySQL ZAMÓW PRZEZ INSERT INTO w MySQL Wartości NULL MySQL AKTUALIZACJA MySQL USUŃ MYSQL LIMIT MySQL MIN i MAX w MySQL LICZBA, ŚREDNIA, SUMA MYSQL PODOBNE do MySQL Symbole wieloznaczne MySQL MySQL IN MySQL POMIĘDZY Aliasy MySQL Połączenia MySQL WEWNĘTRZNE DOŁĄCZENIE do MySQL DOŁĄCZ DO MYSQL W LEWO DOŁĄCZ DO MYSQL DOŁĄCZ DO MYSQL Samo dołączanie do MySQL UNIA MySQL MySQL GRUPA WG MySQL POSIADAJĄCY MySQL ISTNIEJE MySQL WSZYSTKO, WSZYSTKO MySQL WSTAWIĆ WYBIERZ PRZYPADEK MySQL Funkcje zerowe MySQL Komentarze MySQL Operatory MySQL

Baza danych MySQL

Tworzenie bazy danych MySQL Upuść bazę danych MySQL Utwórz tabelę MySQL Tabela upuszczania MySQL Zmień tabelę MySQL Ograniczenia MySQL MySQL nie jest pusty Unikalny MySQL Klucz podstawowy MySQL Klucz obcy MySQL Kontrola MySQL Domyślny MySQL Indeks tworzenia MySQL Automatyczny przyrost MySQL Daty MySQL Widoki MySQL

Referencje MySQL

Typy danych MySQL Funkcje MySQL

Przykłady MySQL

Przykłady MySQL Quiz MySQL Ćwiczenia MySQL

Operatory MySQL ANY i ALL


Operatory MySQL ANY i ALL

Operatory ANYi ALLumożliwiają porównanie wartości w jednej kolumnie z zakresem innych wartości.


DOWOLNY Operator

Operator ANY:

  • zwraca jako wynik wartość logiczną
  • zwraca TRUE, jeśli DOWOLNA z wartości podzapytania spełnia warunek

ANY oznacza, że ​​warunek będzie prawdziwy, jeśli operacja jest prawdziwa dla dowolnej wartości w zakresie.

DOWOLNA składnia

SELECT column_name(s)
FROM table_name
WHERE column_name operator ANY
  (SELECT column_name
 
FROM table_name
 
WHERE condition);

Uwaga: operator musi być standardowym operatorem porównania (=, <>, !=, >, >=, < lub <=).


WSZYSTKI Operator

Operator ALL:

  • zwraca jako wynik wartość logiczną
  • zwraca TRUE, jeśli WSZYSTKIE wartości podzapytania spełniają warunek
  • jest używany z wyrażeniami SELECT, WHEREiHAVING

ALL oznacza, że ​​warunek będzie spełniony tylko wtedy, gdy operacja jest prawdziwa dla wszystkich wartości w zakresie.

ALL Składnia z SELECT

SELECT ALL column_name(s)
FROM table_name
WHERE condition;

ALL Składnia z WHERE lub HAVING

SELECT column_name(s)
FROM table_name
WHERE column_name operator ALL
  (SELECT column_name
 
FROM table_name
 
WHERE condition);

Uwaga: operator musi być standardowym operatorem porównania (=, <>, !=, >, >=, < lub <=).


Demo bazy danych

Poniżej znajduje się wybór z tabeli „Produkty” w przykładowej bazie danych Northwind:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35
6 Grandma's Boysenberry Spread 3 2 12 - 8 oz jars 25
7 Uncle Bob's Organic Dried Pears 3 7 12 - 1 lb pkgs. 30
8 Northwoods Cranberry Sauce 3 2 12 - 12 oz jars 40
9 Mishi Kobe Niku 4 6 18 - 500 g pkgs. 97

Oraz wybór z tabeli „Szczegóły zamówienia” :

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40
6 10250 41 10
7 10250 51 35
8 10250 65 15
9 10251 22 6
10 10251 57 15


Przykłady SQL DOWOLNE

Poniższa instrukcja SQL wyświetla nazwę ProductName, jeśli znajdzie DOWOLNE rekordy w tabeli OrderDetails, które mają Quantity równe 10 (to zwróci TRUE, ponieważ kolumna Quantity ma kilka wartości 10):

Przykład

SELECT ProductName
FROM Products
WHERE ProductID = ANY
  (SELECT ProductID
  FROM OrderDetails
  WHERE Quantity = 10);

Poniższa instrukcja SQL wyświetla nazwę ProductName, jeśli znajdzie DOWOLNE rekordy w tabeli OrderDetails, które mają Quantity większe niż 99 (to zwróci TRUE, ponieważ kolumna Quantity ma pewne wartości większe niż 99):

Przykład

SELECT ProductName
FROM Products
WHERE ProductID = ANY
  (SELECT ProductID
  FROM OrderDetails
  WHERE Quantity > 99);

Poniższa instrukcja SQL wyświetla nazwę ProductName, jeśli znajdzie DOWOLNE rekordy w tabeli OrderDetails, które mają wartość Quantity większą niż 1000 (zwróci to wartość FALSE, ponieważ kolumna Quantity nie zawiera wartości większych niż 1000):

Przykład

SELECT ProductName
FROM Products
WHERE ProductID = ANY
  (SELECT ProductID
  FROM OrderDetails
  WHERE Quantity > 1000);

SQL WSZYSTKIE przykłady

Poniższa instrukcja SQL zawiera listę WSZYSTKICH nazw produktów:

Przykład

SELECT ALL ProductName
FROM Products
WHERE TRUE;

Poniższa instrukcja SQL zawiera nazwę ProductName, jeśli WSZYSTKIE rekordy w tabeli OrderDetails mają Quantity równe 10. To oczywiście zwróci FALSE, ponieważ kolumna Quantity ma wiele różnych wartości (nie tylko wartość 10):

Przykład

SELECT ProductName
FROM Products
WHERE ProductID = ALL
  (SELECT ProductID
  FROM OrderDetails
  WHERE Quantity = 10);