mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-22 15:42:02 +00:00
ru
This commit is contained in:
parent
da76c4053c
commit
4581b37da5
31
docs/ru/sql-reference/operators/exists.md
Normal file
31
docs/ru/sql-reference/operators/exists.md
Normal file
@ -0,0 +1,31 @@
|
||||
# EXISTS {#exists-operator}
|
||||
|
||||
Оператор `EXISTS` проверяет, сколько строк возвращает подзапрос. Если результат пустой, то оператор возвращает `0`. В остальных случаях оператор возвращает `1`.
|
||||
|
||||
`EXISTS` может быть использован в секции [WHERE](../../sql-reference/statements/select/where.md).
|
||||
|
||||
!!! warning "Предупреждение"
|
||||
Ссылки на таблицы или столбцы основного запроса не поддерживаются в подзапросе.
|
||||
|
||||
**Синтаксис**
|
||||
|
||||
```sql
|
||||
WHERE EXISTS(subquery)
|
||||
```
|
||||
|
||||
**Пример**
|
||||
|
||||
Запрос:
|
||||
|
||||
``` sql
|
||||
SELECT 'Exists' WHERE EXISTS (SELECT * FROM numbers(10) WHERE number < 2);
|
||||
SELECT 'Empty subquery' WHERE EXISTS (SELECT * FROM numbers(10) WHERE number > 12);
|
||||
```
|
||||
|
||||
Первый запрос возвращает одну строку, а второй запрос не возвращает строк, так как результат его подзапроса пустой:
|
||||
|
||||
``` text
|
||||
┌─'Exists'─┐
|
||||
│ Exists │
|
||||
└──────────┘
|
||||
```
|
@ -72,7 +72,7 @@ toc_title: "Операторы"
|
||||
|
||||
## Операторы для работы с множествами {#operatory-dlia-raboty-s-mnozhestvami}
|
||||
|
||||
*Смотрите раздел [Операторы IN](../../sql-reference/operators/in.md#select-in-operators).*
|
||||
Смотрите [операторы IN](../../sql-reference/operators/in.md#select-in-operators) и оператор [EXISTS](../../sql-reference/operators/exists.md).
|
||||
|
||||
`a IN ...` - функция `in(a, b)`
|
||||
|
||||
|
@ -27,3 +27,20 @@ SELECT * FROM t_null WHERE y IS NULL
|
||||
!!! note "Примечание"
|
||||
Существует оптимизация фильтрации под названием [prewhere](prewhere.md).
|
||||
|
||||
**Пример**
|
||||
|
||||
Чтобы найти числа, которые кратны 3 и больше 10, можно выполнить запрос к [таблице numbers](../../../sql-reference/table-functions/numbers.md):
|
||||
|
||||
``` sql
|
||||
SELECT number FROM numbers(20) WHERE (number > 10) AND (number % 3 == 0);
|
||||
```
|
||||
|
||||
Результат:
|
||||
|
||||
``` text
|
||||
┌─number─┐
|
||||
│ 12 │
|
||||
│ 15 │
|
||||
│ 18 │
|
||||
└────────┘
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user