You need to enable JavaScript to run this app.
导航
条件函数
最近更新时间:2024.11.25 12:55:24首次发布时间:2022.02.28 12:33:06

multiIf

允许您在查询中更紧凑地编写 CASE 运算符。
语法

multiIf(cond_1, then_1, cond_2, then_2, ..., else)

参数:

  • cond_N— 函数返回的条件then_N
  • then_N— 函数执行时的结果。
  • else— 如果没有任何条件满足,则函数的结果。

该函数接受2N+1参数。
返回值该函数根据条件
返回其中一个值then_N或。elsecond_N
示例

CREATE TABLE IF NOT EXISTS test.functionMultiIf (id UInt8, left Nullable(UInt8), right Nullable(UInt8)) ENGINE=CnchMergeTree ORDER BY id;
INSERT INTO test.functionMultiIf VALUES (1,NULL,4),(2,1,3),(3,2,2),(4,3,1),(5,4,NULL);
SELECTleft,right,
    multiIf(left < right, 'left is smaller', left > right, 'left is greater', left = right, 'Both equal', 'Null value') AS resultFROM test.functionMultiIf
┌─left─┬─right─┬─result──────────┐
│ ᴺᵁᴸᴸ │ 4     │ Null value      │
│ 1    │ 3     │ left is smaller │
│ 2    │ 2     │ Both equal      │
│ 3    │ 1     │ left is greater │
│ 4    │ ᴺᵁᴸᴸ  │ Null value      │
└──────┴───────┴─────────────────┘