SQLab
УчёбаПрактикаЗадачиАренаРейтинг
© 2026 SQLab · Ташкент
SQLab

Учите SQL прямо в браузере — ничего не нужно устанавливать.

Платформа

  • Учёба
  • Практика
  • Задачи
  • Арена
  • Рейтинг

Для кого

  • Студентам
  • Преподавателям
  • Университетам
© 2026 SQLab. Все права защищены.Сделано в Узбекистане для студентов.
УчёбаПрактикаЗадачиАренаРейтинг
0/26

Основы

  • Что такое база данных?
  • Первый SELECT
  • WHERE: отбор нужных строк
  • IN, BETWEEN, LIKE и NULL
  • Сортировка, LIMIT и DISTINCT

Вычисления

  • Выражения, функции и CASE
  • Работа с датами
  • COUNT, SUM, AVG, MIN, MAX
  • GROUP BY и HAVING

Соединение таблиц

  • Ключи и связи
  • INNER JOIN
  • LEFT JOIN и строки без пары
  • Несколько таблиц и self join

Сложные запросы

  • Подзапросы
  • UNION, INTERSECT, EXCEPT
  • WITH: именованные запросы
  • Оконные функции

Создание и изменение таблиц

  • CREATE TABLE: типы и ограничения
  • INSERT, UPDATE, DELETE
  • ALTER, DROP, TRUNCATE
  • Как правильно спроектировать базу

Профессиональный уровень

  • Индексы и EXPLAIN
  • Транзакции и ACID
  • VIEW: сохранённые запросы
  • Функции, процедуры, триггеры
  • Пользователи, права и резервные копии
Учёба/Сложные запросы

UNION, INTERSECT, EXCEPT

156 мин

Иногда результаты нескольких запросов нужно объединить в один список или сравнить друг с другом. Для этого есть операции над множествами.

Условие: столбцы должны совпадать

В объединяемых запросах должно быть одинаковое количество столбцов совместимых типов. Имена столбцов в результате берутся из первого запроса.

UNION и UNION ALL

Все люди университета — студенты и преподаватели — в одном списке:

university· Попробуйте изменить
SELECT first_name, last_name, 'talaba' AS role FROM students
UNION ALL
SELECT first_name, last_name, 'ustoz' FROM teachers
ORDER BY last_name
LIMIT 10;
  • UNION ALL — складывает всё, повторы остаются (быстрее);
  • UNION — убирает повторы.
university· Попробуйте изменить
SELECT city FROM students
UNION
SELECT 'Toshkent';

INTERSECT — есть в обоих

Фамилии, которые встречаются и у студентов, и у преподавателей:

university· Попробуйте изменить
SELECT last_name FROM students
INTERSECT
SELECT last_name FROM teachers;

EXCEPT — есть в первом, нет во втором

Фамилии, которые есть у студентов, но нет у преподавателей:

university· Попробуйте изменить
SELECT last_name FROM students
EXCEPT
SELECT last_name FROM teachers;
1Упражнение

Выведите одним списком без повторов все города, которые встречаются у покупателей (customers.city) и в заказах (orders.city).


2Упражнение

Выведите customer_id покупателей, которые делали заказы, но ни разу не писали отзывов (используйте EXCEPT).


Запомните

  • UNION ALL — сложить, UNION — сложить без повторов.
  • INTERSECT — общая часть, EXCEPT — разница.
  • Количество и типы столбцов в запросах должны совпадать.
Предыдущий урокПодзапросыСледующий урокWITH: именованные запросы

Содержание

  • Условие: столбцы должны совпадать
  • UNION и UNION ALL
  • INTERSECT — есть в обоих
  • EXCEPT — есть в первом, нет во втором
  • Запомните
УчёбаПрактикаЗадачиАренаРейтинг

SQLab