Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

EXISTS

O operador EXISTS verifica quantos registros há no resultado de uma subconsulta. Se ele estiver vazio, o operador retornará 0. Caso contrário, retornará 1.

EXISTS também pode ser usado em uma cláusula WHERE.

Sintaxe

EXISTS(subquery)

Exemplo

Consulta para verificar a existência de valores em uma subconsulta:

Querysql
SELECT EXISTS(SELECT * FROM numbers(10) WHERE number > 8), EXISTS(SELECT * FROM numbers(10) WHERE number > 11)
Responsetext
┌─in(1, _subquery1)─┬─in(1, _subquery2)─┐
│                 1 │                 0 │
└───────────────────┴───────────────────┘

Consulta com uma subconsulta que retorna várias linhas:

Querysql
SELECT count() FROM numbers(10) WHERE EXISTS(SELECT number FROM numbers(10) WHERE number > 8);
Responsetext
┌─count()─┐
│      10 │
└─────────┘

Consulta com uma subconsulta que retorna um resultado vazio:

Querysql
SELECT count() FROM numbers(10) WHERE EXISTS(SELECT number FROM numbers(10) WHERE number > 11);
Responsetext
┌─count()─┐
│       0 │
└─────────┘
Navigation