Логотип schoolsw3.com
Учебники Справочники Упражнения КАК? Меню
Создать
Редактор Поддержка Форум

×
Учебники
Справочники
Упражнения
Пожертвовать Обновление Реклама Видео Магазин

SQL Учебник

SQL ГЛАВНАЯ SQL ВВЕДЕНИЕ SQL СИНТАКСИС SQL SELECT SQL SELECT DISTINCT SQL WHERE SQL ORDER BY SQL AND SQL OR SQL NOT SQL INSERT INTO SQL NULL ЗНАЧЕНИЕ SQL UPDATE SQL DELETE SQL SELECT TOP SQL MIN() и MAX() SQL COUNT(), AVG() и ... SQL LIKE SQL ЗНАКИ SQL IN SQL BETWEEN SQL ПСЕВДОНИМЫ SQL JOIN SQL INNER JOIN SQL LEFT JOIN SQL RIGHT JOIN SQL FULL OUTER JOIN SQL SELF JOIN SQL UNION SQL GROUP BY SQL HAVING SQL EXISTS SQL ANY и ALL SQL SELECT INTO SQL INSERT INTO SELECT SQL CASE SQL ФУНКЦИИ NULL SQL ХРАНИМАЯ SQL КОММЕНТАРИИ SQL ОПЕРАТОРЫ

SQL БАЗА ДАННЫХ

SQL СОЗДАТЬ БД SQL ОТКИНУТЬ БД SQL РЕЗЕРВНАЯ БД SQL СОЗДАТЬ ТАБЛИЦУ SQL ОТКИНУТЬ ТАБЛИЦУ SQL ИЗМЕНИТЬ ТАБЛИЦУ SQL ОГРАНИЧЕНИЯ SQL NOT NULL SQL UNIQU SQL PRIMARY KEY SQL FOREIGN KEY SQL CHECK SQL DEFAULT SQL CREATE INDEX SQL AUTO INCREMENT SQL ДАТЫ SQL CREATE VIEW SQL ИНЪЕКЦИЯ SQL ХОСТИНГ SQL ТИПЫ ДАННЫХ

SQL Справочник

SQL Ключевые слова MySQL Функции SQL Server функции MS Access функции SQL Краткий справочник

SQL Примеры

SQL Примеры SQL Викторина SQL Упражнения SQL Сертификат

SQL ANY и ALL



Операторы ANY и ALL

Операторы ANY и ALL используются с предложением WHERE или HAVING.

Оператор ANY возвращает true, если какое-либо из значений подзапроса удовлетворяет условию.

Оператор ALL возвращает true, если все значения подзапроса удовлетворяют условию.

Синтаксис ANY

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

Синтаксис ALL

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

Примечание: Оператор должен быть стандартным оператором сравнения (=, <>, !=, >, >=, <, or <=).


Демо база данных

Ниже приведен выбор из таблицы "Products" в образце базы данных 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

И выбор из таблицы "OrderDetails":

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40


Примеры SQL ANY

Оператор ANY возвращает TRUE, если какое-либо из значений подзапроса удовлетворяет условию.

Следующий оператор SQL возвращает TRUE и перечисляет названия продуктов, если он находит какие-либо записи в таблице OrderDetails, что количество = 10:

Пример

SELECT ProductName
FROM Products
WHERE ProductID = ANY (SELECT ProductID FROM OrderDetails WHERE Quantity = 10);
Попробуйте сами »

Следующий оператор SQL возвращает TRUE и перечисляет названия продуктов, если он находит какие-либо записи в таблице OrderDetails, что количество > 99:

Пример

SELECT ProductName
FROM Products
WHERE ProductID = ANY (SELECT ProductID FROM OrderDetails WHERE Quantity > 99);
Попробуйте сами »

Пример SQL ALL

Оператор ALL возвращает TRUE, если все значения подзапроса удовлетворяют условию.

Следующая инструкция SQL возвращает TRUE и перечисляет названия продуктов, если все записи в таблице OrderDetails имеют значение quantity = 10 ( таким образом, этот пример возвращает FALSE, поскольку не все записи в таблице OrderDetails имеют значение quantity = 10):

Пример

SELECT ProductName
FROM Products
WHERE ProductID = ALL (SELECT ProductID FROM OrderDetails WHERE Quantity = 10);
Попробуйте сами »