版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Rinvay_Cui/article/details/89479859
SQL命令中的case...when...then...else...end条件查询
(不同于where) 与 类型转换的用法
case...when...then...else...end,是在from前面
,:可以改变记录中某字段的值,不能决定是否显示该记录;
where,是在from后面,
:不可以改变记录中某字段的值,但可以决定是否显示该记录。
case...when...then...else...end,
可用于对同一记录的多个字段求和,带分支判断。
//供大家参考
Select id,zynr,
(case when bzh='' then '无' else bzh end) AS bzh,
(case when fbrq is null then '1982-06-02' else fbrq end) AS fbrq
From policy_fgxx
// sqlite case when then else end
sqlite> select datetime(CreateTime, 'unixepoch', 'localtime') 时间,Message 内容,case Des when 0 then '乐' else '园' end 名称
from Chat_af863d30e1c1e5eba27a0df37a75dba0 where rowid <= 2;
+---------------------+----------+------+
| 时间 | 内容 | 名称 |
+---------------------+----------+------+
| 2013-08-22 18:54:13 | 网络不好 | 园 |
| 2013-08-22 20:19:07 | 乔乐 | 园 |
+---------------------+----------+------+
2 rows in set
这个例子主要是学习了(CASE WHEN THEN ELSE end )语句的用法.
在我们做数据统计的时候这是一个非常有用的语句。