кодесурса
«SQL

Оператор SQL ALL

script1adsense2code
script1adsense3code

ВСЕ оператор

ALL используется для выбора всех записей SELECT STATEMENT . Он сравнивает значение с каждым значением в списке или результатами запроса. ВСЕ должно предшествовать операторам сравнения и оценивается как ИСТИНА, если запрос не возвращает строк. Например, ВСЕ означает больше, чем каждое значение, означает больше, чем максимальное значение. Предположим, что ALL (1, 2, 3) означает больше, чем 3.

Синтаксис:

 SELECT [имя_столбца ... | выражение1]
ОТ [имя_таблицы]
ГДЕ выражение2 сравнение_оператор {ВСЕ | ЛЮБОЙ | НЕКОТОРЫЕ} (подзапрос)

Параметры:

название Описание
column_name Имя столбца таблицы.
выражение1 Выражение состоит из одной константы, переменной, скалярной функции или имени столбца и может также быть фрагментами запроса SQL, которые сравнивают значения с другими значениями или выполняют арифметические вычисления.
table_name Наименование таблицы.
ГДЕ выражение2 Сравнивает скалярное выражение, например столбец, с каждым значением в подзапросе для оператора ALL. Все строки должны соответствовать выражению, чтобы вернуть логическое значение ИСТИНА для оператора ALL.
comparison_operator Сравнивает выражение с подзапросом. Сравнение должно быть стандартным оператором сравнения (=, <>,! =,>,> =, <Или <=.

Наглядное представление: оператор SQL ALL

«SQL

Поддержка СУБД: ВСЕ оператор

СУБД команда
MySQL поддержанный
PostgreSQL поддержанный
SQL Server поддержанный
оракул поддержанный

Пример: оператор SQL ALL

Чтобы получить столбцы «des_date», «des_amount» и «ord_amount» из таблицы «despatch» при следующих условиях:

1. «des_amount» таблицы «despatch» больше, чем «ord_amount» из таблицы «orders», которая удовлетворяет условию ниже:

а) ord_amount должно быть равно 2000,

можно использовать следующий оператор SQL:

SELECT des_date,des_amount,ord_amount
FROM despatch
WHERE des_amount>ALL(
SELECT ord_amount FROM orders
WHERE ord_amount=2000);

Пример таблицы: заказы


Пример таблицы: отправка


Объяснение:

Внутренний запрос возвращает 'ord_amount' из таблицы 'orders' для 'ord_amount' равно 2000
Внешний запрос select 'des_date', 'des_amount' и 'ord_amount' образуют таблицу «despatch», чье «des_amount» больше, чем все «ord_amount» из таблицы «orders», чье значение ord_amount равно 2000.

Выход:

 DES_DATE DES_AMOUNT ORD_AMOUNT
--------- ---------- ----------
12 ЯНВ-08 3800 4000
19-ОКТ-08 4000 4000
24-ИЮЛ-08 4500 3500

Смотрите нашу базу данных моделей

Упражнения по SQL

Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.

Предыдущий: ЛЮБОЙ
Далее: НЕКОТОРЫЕ

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code