goo*_*yui 1 sql sql-server-2005 sql-server-2008
SQL 2008/2005
我在Case语句上有SQL查询语法问题 - 我正在寻找一些帮助.这是Case Statement上的一个简单的SQL语法问题.我已经在我的查询中评论了这个场景,我已经附上了..请建议继续前进..!
select
stuff(Dr.DrugNDCNbr,
case when Dr.DrugNDCType in (50, 56) then 1
when Dr.DrugNDCType in (51, 57) then 6
when Dr.DrugNDCType = 52 then 10
-- when Dr.DrugNDCType = 49 then -- DO NOTHING .. GIVE THE ACTUAL VALUE
end, 0, '0')
from drug Dr
where Dr.drugnbrkey = 6284
Run Code Online (Sandbox Code Playgroud)
它是您需要的嵌套CASE 表达式
select
case
when Dr.DrugNDCType = 49 then Dr.DrugNDCNbr
else
stuff ( Dr.DrugNDCNbr,
case
when Dr.DrugNDCType in (50, 56) then 1
when Dr.DrugNDCType in (51, 57) then 6
when Dr.DrugNDCType = 52 then 10
end, 0, '0')
end
from drug Dr
where Dr.drugnbrkey = 6284
Run Code Online (Sandbox Code Playgroud)