场景
在对Mysql中的数据查询时,某些字段比如是否怎样样,在数据库中存储的是0和1。
如果想在查询时根据值是0和1进而返回是和否怎样编写查询语句。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
原来数据库的查询语句如下
SELECT
id,
gh,
xm,
ysfqq,
yxbcs,
ydbcs,
xsfqq,
xxbcs,
xdbcs,
xgr,
xgrq
FROM
kq_xjcsszls
其中ysfqq与xsfqq都是要进行判断并返回结果的值。
此时直接返回0和1
怎样使用case-when进行判断并返回查询结果
SELECT id, gh, xm, CASE ysfqq WHEN 1 THEN ‘是‘ WHEN 0 THEN ‘否‘ ELSE ‘否‘ END AS ysfqq, yxbcs, ydbcs, CASE xsfqq WHEN 1 THEN ‘是‘ WHEN 0 THEN ‘否‘ ELSE ‘否‘ END AS xsfqq, xxbcs, xdbcs, xgr, xgrq FROM kq_xjcsszls
将原来的字段替换为如下
CASE ysfqq WHEN 1 THEN ‘是‘ WHEN 0 THEN ‘否‘ ELSE ‘否‘ END AS ysfqq,