Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Клауза UNION | Вкладені Запити
Розширений Рівень SQL
course content

Зміст курсу

Розширений Рівень SQL

Розширений Рівень SQL

1. Групування
2. Вкладені Запити
3. Об'єднання Таблиць
4. DDL та DML в SQL

book
Клауза UNION

Great job mastering inner queries! We've caught the attention of a client who needs SQL queries. Before we dive into JOINs, let's learn about the UNION clause, which is essential for combining multiple tables.

Here are some important things to know about using UNION:

  1. Columns Count and Order: All queries combined with UNION must have the same number of columns in the same order;

  2. Data Types: The columns in each query must have compatible data types;

  3. Unique Rows: By default, UNION removes duplicate rows. Use UNION ALL if you want to keep duplicates.

Давайте коротко розглянемо ключові моменти при роботі з UNION:

  1. Кількість та порядок стовпців: Усі запити, які комбінуються за допомогою UNION, повинні мати однакову кількість стовпців, і ці стовпці повинні бути в тому ж порядку;

  2. Типи даних: Типи даних відповідних стовпців кожного запиту мусять бути сумісними;

  3. Унікальні рядки: За замовчуванням, UNION видаляє дублікати рядків. Для включення дублікатів використовується UNION ALL.

You can see that this table has similarities with the employees table. Using the UNION clause, we can combine these two tables to, for example, see a list of all names and surnames of employees and contractors involved in the company.

To do this, we'll use the UNION clause:

12345678
(SELECT employee_id as id, first_name, last_name FROM employees) UNION (SELECT contractor_id as id, first_name, last_name FROM contractors) ORDER BY id
copy

Let's break down what's happening:

We have two queries that each return three columns with the same data types. We want to see the Id, first_name, and last_name of everyone in the company. We also renamed the Id column so both queries have the same column names.

Then, we use UNION to combine the results of these queries, removing duplicates (though there are none here).

Finally, we sort the results by Id using ORDER BY.

Note

We're sorting by Id, which is a common column in both tables.

After using UNION, we get a "single large query" that we can further manipulate with clauses like ORDER BY.

Давайте коротко розглянемо, що тут відбувається:

У нас є 2 запити, які повертають 3 стовпці з однаковими типами даних для кожного стовпця.

Тобто, ми хочемо побачити Id, first_name, та last_name всіх учасників компанії. Ми також змінили псевдонім Id, так що стовпці в обох запитах SELECT мають однакові назви.

Далі ми використовуємо клітинку UNION, щоб поєднати результати цих двох запитів SELECT з вилученням дублікатів (хоча у нас немає дублікатів).

Після цього ми використовуємо клітинку ORDER BY для сортування за Id.

Примітка

Ми сортуємо за Id, який є спільним стовпцем для обох таблиць.

Для кращого розуміння потрібно усвідомити, що після поєднання за допомогою клітинки UNION, ми отримуємо "один великий запит", з яким потім можна працювати, використовуючи різні клітинки; в нашому випадку це клітинка ORDER BY.

123456789
SELECT id, first_name, last_name FROM ( SELECT employee_id AS id, first_name, last_name FROM employees UNION SELECT contractor_id AS id, first_name, last_name FROM contractors ) AS combined WHERE first_name = 'Jane'
copy

Using a subquery in the FROM section gives us more flexibility! It might seem tricky at first, but mastering this will make writing complex queries much easier.

1. What columns are required when using the UNION clause in SQL?

2. Які стовпці обов'язкові при використанні клози UNION в SQL?

What columns are required when using the `UNION` clause in SQL?

What columns are required when using the UNION clause in SQL?

Виберіть правильну відповідь

Які стовпці обов'язкові при використанні клози `UNION` в SQL?

Які стовпці обов'язкові при використанні клози UNION в SQL?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 5
We're sorry to hear that something went wrong. What happened?
some-alt