sql server case when的用法

半世苍凉 提交于 2019-12-10 07:17:37

Case具有两种格式。简单Case函数和Case搜索函数。

–简单Case函数

CASE sex

     WHEN '1' THEN '男'

     WHEN '2' THEN '女'

ELSE ‘其他’ END

–Case搜索函数

CASE WHEN sex = ‘1’ THEN ‘男’

     WHEN sex = '2' THEN '女'

ELSE ‘其他’ END

一般使用下面这种用法:例如
SELECT I.ID,E.XH,I.HTH,I.QYSJ,I.HTLX,I.XMJL,U.ZFDW,I.HTMC,(SELECT COUNT(T.ID) FROM JKCWFDB_WORK_JXM.DBO.INFORMATION_NEW_DENTMON T WHERE I.ID=T.PID) AS TOTAL, M.HTZJE ,B.SSJE_BIDDING,B.ZFSJ_BIDDING,
(CASE
WHEN B.ZFJE_BIDDING IS NULL THEN ‘1’
WHEN B.ZFJE_BIDDING=B.SSJE_BIDDING THEN ‘1’
END) AS HKZT
,U.SSJE_UNIT,U.ZFSJ_UNIT,U.HKZT_UNIT,F.KPJE,F.DZJE,F.HKZT_REFUND,O.HTZT
FROM JKCWFDB_WORK_JXM.DBO.INFORMATION_DENTMON I
LEFT JOIN JKCWFDB_WORK_JXM.DBO.CONTRACT_MONEY_DENTMON M ON I.ID=M.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.BIDDING_DENTMON B ON I.ID=B.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.UNIT_DENTMON U ON I.ID=U.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.CONTRACT_RECEIVED_DENTMON R ON I.ID=R.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.CONTRACT_REFUND_DENTMON F ON I.ID=F.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.BAD_DEPT_DENTMON D ON I.ID=D.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.INNER_DENTMON N ON I.ID=N.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.BUFF_DENTMON O ON I.ID=O.PID
LEFT JOIN JKCWFDB_WORK_JXM.DBO.ENCLOSURE_DENTMON E ON I.ID=E.PID
WHERE 1=1

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!