Оператори ANY та ALL в SQL

  |
 2364

Оператор ANY порівнює значення першої таблиці з усіма значеннями другої таблиці та повертає рядок, якщо є збіг з будь-яким значенням. Наприклад, якщо ми хочемо знайти вчителів, вік яких аналогічний віку вказаного учня, ми можемо використати:

Підзапит:

повертає всі дані віку з таблиці Students. А умова:

порівнює вік учнів (повертається від підзапиту) із віком вчителя. За наявності збігу вибирається відповідний рядок таблиці Teachers.

Оператор ALL в SQL

Оператор ALL порівнює значення першої таблиці з усіма значеннями другої таблиці та повертає рядок, якщо є збіг з усіма значеннями. Наприклад, якщо ми хочемо знайти вчителів, вік яких більше, ніж у всіх учнів, ми можемо використати:

Підзапит:

повертає всі дані віку з таблиці Students. А умова:

порівнює вік учнів (повертається від підзапиту) із віком вчителя. Якщо вік вчителя більший, ніж вік усіх учнів, вибирається відповідний рядок таблиці Teachers.

Оператори ANY та ALL з операторами порівняння

Ми можемо використовувати будь-які оператори порівняння, такі як =, >, < та інші, з операторами ANY та ALL. Давайте розглянемо приклад, коли нам потрібні вчителі, вік яких менше, ніж у будь-якого учня:

Тут ми вибираємо рядки з таблиці Teachers, якщо вік (age) у зовнішньому запиті менший за будь-який вік у підзапиті.

Оцінити статтю:

1 Зірка2 Зірки3 Зірки4 Зірки5 Зірок (16 оцінок, середня: 4,94 з 5)
Завантаження...

Залишити відповідь

Ваш E-mail не буде опублікований. Обов'язкові поля відмічені *