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
转载请注明:IT运维空间 » Java » sql server中类似oracle中decode功能的函数
继续浏览有关 数据库技术文章/教程 的文章
发表评论