EXISTS
Оператор EXISTS
проверяет, сколько строк содержит результат выполнения подзапроса. Если результат пустой, то оператор возвращает 0
. В остальных случаях оператор возвращает 1
.
EXISTS
может быть использован в секции WHERE.
Предупреждение
Ссылки на таблицы или столбцы основного запроса не поддерживаются в подзапросе.
Синтаксис
WHERE EXISTS(subquery)
Пример
Запрос с подзапросом, возвращающим несколько строк:
SELECT count() FROM numbers(10) WHERE EXISTS(SELECT number FROM numbers(10) WHERE number > 8);
Результат:
┌─count()─┐
│ 10 │
└─────────┘
Запрос с подзапросом, возвращающим пустой результат:
SELECT count() FROM numbers(10) WHERE EXISTS(SELECT number FROM numbers(10) WHERE number > 11);
Результат:
┌─count()─┐
│ 0 │
└─────────┘