SQL Server不支持在CASE语句中使用OR。

605

CASE语句中的WHEN子句不支持OR运算符。我该怎么做?

CASE ebv.db_no 
    WHEN 22978 OR 23218 OR 23219 THEN 'WECS 9500' 
    ELSE 'WECS 9520' 
END as wecs_system 

SQL标准允许多个值:https://dev59.com/dms05IYBdhLWcg3wGuKd#54562580 - Lukasz Szozda
11个回答

-5
Select s.stock_code,s.stock_desc,s.stock_desc_ar,
mc.category_name,s.sel_price,
case when s.allow_discount=0 then 'Non Promotional Item' else 'Prmotional 
item' end 'Promotion'
From tbl_stock s inner join tbl_stock_category c on s.stock_id=c.stock_id
inner join tbl_category mc on c.category_id=mc.category_id
where mc.category_id=2 and s.isSerialBased=0 

1
这个回答看起来与问题无关。 - LarsTech
4
请勿发布裸代码,并提供代码执行的解释。 - Jonathan Mee

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接