SQL | Оператор МІНУС
Оператор МІНУС використовується з двома SELECT оператори для повернення лише тих рядків із першого запиту, яких немає в другому. Він відфільтровує всі загальні рядки та зберігає лише унікальні рядки з першого набору результатів.
Образне уявлення :
Як ви бачите, на наведеній вище схемі оператор МІНУС поверне лише ті рядки, які присутні в наборі результатів з Таблиці1 і відсутні в наборі результатів з Таблиці2.
Синтаксис:
SELECT column1 column2 ... columnN
FROM table_name1
[WHERE condition]
MINUS
SELECT column1 column2 ... columnN
FROM table_name2
[WHERE condition];У наведеному вище синтаксисі
- Перший ВИБІР: Отримує вказані стовпці (стовпець1 стовпець2 ... стовпецьN) із table_name1, необов’язково відфільтрований за умовою WHERE.
- МІНУС: Оператор MINUS повертає рядки з першого запиту, яких немає в другому запиті.
- Другий SELECT: Отримує ті самі стовпці з table_name2, необов’язково відфільтровані за умовою WHERE.
- Вихід: Результат містить рядки з table_name1, які не існують у table_name2. Дублікати видаляються з остаточного результату.
Таблиці :
Таблиця 1
| Ім'я | Адреса | Вік | Оцінка |
|---|---|---|---|
| Суворий | Делі | 20 | А |
| Гаурав | Джайпур | 21 | Б |
| Практика | Мумбаї | 21 | А |
| Дханрадж | Колката | 22 | Б |
Таблиця 2
| Ім'я | Вік | Телефон | Оцінка |
|---|---|---|---|
| Акаша | 20 | XXXXXXXXX | А |
| Дірадж | 21 | XXXXXXXXX | Б |
| Вайбхав | 21 | XXXXXXXXX | А |
| Дханрадж | 22 | XXXXXXXXX | Б |
Запити :
SELECT NAME AGE GRADE
FROM Table1
MINUS
SELECT NAME AGE GRADE
FROM Table2;
Вихід:
| Ім'я | Вік | Оцінка |
|---|---|---|
| Суворий | 20 | А |
| Гаурав | 21 | Б |
| Практика | 21 | А |
У цьому запиті:
- Повертає лише ті рядки, які є унікальними для Table1.
- Якщо останній рядок в обох таблицях збігається, він виключається з результату. Таким чином, буде повернено лише перші три рядки з таблиці 1.
Створіть вікторинуПримітка :
- Оператор MINUS підтримується в Oracle, але не підтримується в SQL Server або PostgreSQL.
- Для цих баз даних використовуйте
EXCEPTоператор як альтернатива.