场景

在对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,
posted on 2020-08-14 17:18  霸道流氓  阅读(2645)  评论(0编辑  收藏  举报