mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-21 01:00:48 +00:00
Described operators IS NULL and IS NOT NULL
This commit is contained in:
parent
0cf2d401de
commit
29afde3ac9
@ -79,9 +79,9 @@
|
||||
|
||||
`a ? b : c` - функция `if(a, b, c)`
|
||||
|
||||
Примечание:
|
||||
Примечание:
|
||||
|
||||
Условный оператор сначала вычисляет значения b и c, затем проверяет выполнение условия a, и только после этого возвращает соответствующее значение. Если в качестве b или с выступает функция arrayJoin(), то размножение каждой строки произойдет вне зависимости от условия а.
|
||||
Условный оператор сначала вычисляет значения b и c, затем проверяет выполнение условия a, и только после этого возвращает соответствующее значение. Если в качестве b или с выступает функция arrayJoin(), то размножение каждой строки произойдет вне зависимости от условия а.
|
||||
|
||||
## Условное выражение
|
||||
|
||||
@ -119,3 +119,49 @@ END
|
||||
Иногда это работает не так, как ожидается. Например, `SELECT 4 > 3 > 2` выдаст 0.
|
||||
|
||||
Для эффективности, реализованы функции `and` и `or`, принимающие произвольное количество аргументов. Соответствующие цепочки операторов `AND` и `OR`, преобразуются в один вызов этих функций.
|
||||
|
||||
## Проверка `NULL`
|
||||
|
||||
ClickHouse поддерживает операторы `IS NULL` и `IS NOT NULL`.
|
||||
|
||||
### IS NULL
|
||||
|
||||
- Для значений типа [Nullable](../data_types/nullable.md#data_type-nullable) оператор `IS NULL` возвращает:
|
||||
- `1`, если значение — `NULL`.
|
||||
- `0` в обратном случае.
|
||||
- Для прочих значений оператор `IS NULL` всегда возвращает `0`.
|
||||
|
||||
```bash
|
||||
:) SELECT x+100 FROM t_null WHERE y IS NULL
|
||||
|
||||
SELECT x + 100
|
||||
FROM t_null
|
||||
WHERE isNull(y)
|
||||
|
||||
┌─plus(x, 100)─┐
|
||||
│ 101 │
|
||||
└──────────────┘
|
||||
|
||||
1 rows in set. Elapsed: 0.002 sec.
|
||||
```
|
||||
|
||||
### IS NOT NULL
|
||||
|
||||
- Для значений типа [Nullable](../data_types/nullable.md#data_type-nullable) оператор `IS NOT NULL` возвращает:
|
||||
- `0`, если значение — `NULL`.
|
||||
- `1`, в обратном случае.
|
||||
- Для прочих значений оператор `IS NOT NULL` всегда возвращает `1`.
|
||||
|
||||
```bash
|
||||
:) SELECT * FROM t_null WHERE y IS NOT NULL
|
||||
|
||||
SELECT *
|
||||
FROM t_null
|
||||
WHERE isNotNull(y)
|
||||
|
||||
┌─x─┬─y─┐
|
||||
│ 2 │ 3 │
|
||||
└───┴───┘
|
||||
|
||||
1 rows in set. Elapsed: 0.002 sec.
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user