mysql之逻辑函数

avatar
作者
猴君
阅读量:1

MySQL 中的逻辑函数允许你根据条件对数据进行判断和选择。以下是一些常用逻辑函数的详细介绍和示例:

IF(expr1, expr2, expr3)

如果 expr1 是真(非零和非 NULL),IF() 函数返回 expr2,否则返回 expr3

SELECT IF(1 0, 'true', 'false'); -- 结果: 'true'

CASE

CASE 函数有两种格式:简单 CASE 和搜索 CASE 函数。它们都允许在条件语句中进行选择。

简单 CASE 函数

当有一个表达式需要与一系列值进行比较时使用。

SELECT CASE 2 WHEN 1 THEN 'one' WHEN 2 THEN 'two' WHEN 3 THEN 'three' ELSE 'other'END;  -- 结果: 'two'
搜索 CASE 函数

当需要基于多个条件进行判断时使用。

SELECT CASE WHEN 1 0 THEN 'true' WHEN 2 < 1 THEN 'false' ELSE 'unknown'END;  -- 结果: 'true'

COALESCE(expr1, expr2, ...)

返回参数列表中的第一个非 NULL 值。

SELECT COALESCE(NULL, NULL, 'first non-null', 'second non-null');  -- 结果: 'first non-null'

NULLIF(expr1, expr2)

如果 expr1 等于 expr2,返回 NULL,否则返回 expr1

SELECT NULLIF(1, 1); -- 结果: NULL  SELECT NULLIF(1, 2); -- 结果: 1

IFNULL(expr1, expr2)

如果 expr1 不是 NULL,则返回 expr1,否则返回 expr2

SELECT IFNULL(NULL, 'fallback'); -- 结果: 'fallback'  SELECT IFNULL('not null', 'fallback'); -- 结果: 'not null'

这些逻辑函数在 SQL 查询中非常有用,尤其是当你需要基于某些条件对数据进行处理或转换时。它们可以直接在 SELECT 语句中使用,也可以与其他函数和操作结合使用,以满足更复杂的数据处理需求。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!