НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
24 of 150 menu

Команда EXISTS

Команда EXISTS используется для проверки, возвращает ли подзапрос хотя бы одну строку. Если подзапрос возвращает хотя бы одну запись, выражение EXISTS считается истинным. Чаще всего применяется внутри условия WHERE.

Синтаксис

SELECT column_list FROM table_name WHERE EXISTS ( SELECT 1 FROM related_table WHERE condition )

Таблицы для примеров

countries
id name
1 Belarus
2 Rossiya
3 Ukraina
cities
id name country_id
1 Minsk 1
2 Vitebsk 1
3 Moskva 2
4 Sankt-Peterburg 2

Пример

Давайте выберем только те страны, для которых существует хотя бы один город:

SELECT id, name FROM countries WHERE EXISTS ( SELECT 1 FROM cities WHERE cities.country_id = countries.id ) ORDER BY id

Результат выполнения кода:

id name
1 Belarus
2 Rossiya

Пример

Давайте выберем страны, у которых отсутствуют связанные города:

SELECT id, name FROM countries WHERE NOT EXISTS ( SELECT 1 FROM cities WHERE cities.country_id = countries.id ) ORDER BY id

Результат выполнения кода:

id name
3 Ukraina

Смотрите также

  • команду SELECT,
    которая делает выборку данных
  • команду WHERE,
    которая задаёт условия отбора
  • команду JOIN,
    которая связывает таблицы
  • команду IN,
    которая проверяет вхождение в список
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить