Mysql case when(条件判断) 简单用法

在编写 sql 语句时,我们可能需要对字段值进行判断,比如 null 值将结果赋值为 0 等,这样就不要在代码中再进行循环判断了.

比如这张单表,我们需要在查询结果中将 name 为 '大彬' 的值重新定义了 '角色1',将不是 '大彬' 的值定义为 角色2 ,status = 1 定义为已处理, status=0 定义为 未处理,status=2 定义为 待处理.这个功能就可以使用 mysql 的 case when 来实现.

sql 示例

select *, 
	CASE WHEN name='大彬' THEN '角色1' 
    else '角色2' end as processed_name ,
    case when status = 1 then '已处理'
    when status = 0 then '未处理'
    when status = 2 then '待处理' end as processed_status
    from user;

 执行结果

猜你喜欢

转载自blog.csdn.net/xiaobinqt/article/details/83029272