sqlserver 2008 寫法
select t.PROJECTNAME, t.BUILDCONTENTSCALE, CASE t.PROJECTLEVEL WHEN '0' THEN '國家重點' WHEN '1' THEN '省重點' WHEN '2' THEN '市重點' WHEN '3' THEN '區/縣重點' END AS PROJECTLEVEL, t.TOTALINVESTMENT, t.PROGRESSCONTENT, t.BUILDCOMPANY, t.CONTACTWAY, t.DUTYDEPT, t.REMARK from t_iipms_applayprojects t where t.projecttype = '1' and t.isvoided = '0';
oracle中的寫法
select t.PROJECTNAME, t.BUILDCONTENTSCALE, decode(t.PROJECTLEVEL, '0', '國家重點', '1', '省重點', '2', '市重點', '3', '區/縣重點') as PROJECTLEVEL, t.TOTALINVESTMENT, t.PROGRESSCONTENT, t.BUILDCOMPANY, t.CONTACTWAY, t.DUTYDEPT, t.REMARK from t_iipms_applayprojects t where t.projecttype = '1' and t.isvoided = '0';
細節對比看效果很明顯:SQL Server 2008中
CASE t.PROJECTLEVEL WHEN '0' THEN '國家重點' WHEN '1' THEN '省重點' WHEN '2' THEN '市重點' WHEN '3' THEN '區/縣重點' END AS PROJECTLEVEL
Oracle 10g中
decode(t.PROJECTLEVEL, '0', '國家重點', '1', '省重點', '2', '市重點', '3', '區/縣重點') as PROJECTLEVEL
原文地址:
https://blog.csdn.net/hu_shengyang/article/details/10533865