📣
TiDB Cloud Premium 开放公测中。为企业级工作负载提供无限扩展、即时弹性伸缩和高级安全保障。此页面由 AI 自动翻译,英文原文请见此处。

条件函数



本页按功能分类,全面概述了 TiDB Cloud Lake 中的条件函数,便于参考。

基本条件函数

函数描述示例
IF / IFF根据条件返回一个值IF(1 > 0, 'yes', 'no') → 'yes'
CASE对条件进行求值并返回匹配的结果CASE WHEN 1 > 0 THEN 'yes' ELSE 'no' END → 'yes'
DECODE将表达式与搜索值进行比较并返回结果DECODE(2, 1, 'one', 2, 'two', 'other') → 'two'
COALESCE返回第一个非 NULL 表达式COALESCE(NULL, 'hello', 'world') → 'hello'
NULLIF如果两个表达式相等则返回 NULL,否则返回第一个表达式NULLIF(5, 5) → NULL
IFNULL如果第一个表达式不是 NULL,则返回该表达式,否则返回第二个表达式IFNULL(NULL, 'default') → 'default'
NVL返回第一个非 NULL 表达式NVL(NULL, 'default') → 'default'
NVL2如果 expr1 不是 NULL,则返回 expr2,否则返回 expr3NVL2('value', 'not null', 'is null') → 'not null'

比较函数

函数描述示例
GREATEST返回列表中的最大值GREATEST(1, 5, 3) → 5
LEAST返回列表中的最小值LEAST(1, 5, 3) → 1
GREATEST_IGNORE_NULLS返回最大的非 NULL 值GREATEST_IGNORE_NULLS(NULL, 5, 3) → 5
LEAST_IGNORE_NULLS返回最小的非 NULL 值LEAST_IGNORE_NULLS(NULL, 5, 3) → 3
BETWEEN检查某个值是否位于指定范围内5 BETWEEN 1 AND 10 → true
IN检查某个值是否与列表中的任一值匹配5 IN (1, 5, 10) → true

NULL 和错误处理函数

函数描述示例
IS_NULL检查某个值是否为 NULLIS_NULL(NULL) → true
IS_NOT_NULL检查某个值是否不为 NULLIS_NOT_NULL('value') → true
IS_DISTINCT_FROM检查两个值是否不同,并将 NULL 视为相等NULL IS DISTINCT FROM 0 → true
IS_ERROR检查表达式求值是否产生错误IS_ERROR(1/0) → true
IS_NOT_ERROR检查表达式求值是否未产生错误IS_NOT_ERROR(1/1) → true
ERROR_OR如果第一个表达式不是错误,则返回该表达式,否则返回第二个表达式ERROR_OR(1/0, 0) → 0

文档内容是否有帮助?