mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 18:12:02 +00:00
324fd98de6
* Updating of english translation. * Some bugs are fixed.
1.3 KiB
1.3 KiB
Conditional functions
if(cond, then, else), cond ? operator then : else
Returns then
if cond != 0
, or else
if cond = 0
.
cond
must be of type UInt8
, and then
and else
must have the lowest common type.
then
and else
can be NULL
multiIf
Allows you to write the CASE operator more compactly in the query.
multiIf(cond_1, then_1, cond_2, then_2...else)
Parameters:
cond_N
— The condition for the function to returnthen_N
.then_N
— The result of the function when executed.else
— The result of the function if none of the conditions is met.
The function accepts 2N+1
parameters.
Returned values
The function returns one of the values then_N
or else
, depending on the conditions cond_N
.
Example
Take the table
┌─x─┬────y─┐
│ 1 │ ᴺᵁᴸᴸ │
│ 2 │ 3 │
└───┴──────┘
Run the query SELECT multiIf(isNull(y) x, y < 3, y, NULL) FROM t_null
. Result:
┌─multiIf(isNull(y), x, less(y, 3), y, NULL)─┐
│ 1 │
│ ᴺᵁᴸᴸ │
└────────────────────────────────────────────┘