sql case 语句有问题吗?
select no
from shan
where account_number = '7111'
and area = 'O1139'
and ty = '1'
and ty1 = 'T'
and date = '12-AUG-10'
and code in (case 'B'
when 'B' then 'j01','j05'
when 'C' then 'j02','j06'
else 'j03'
end);
我需要检查“j01”或“j05”中的代码值,我该如何重写查询,请以正确的方式指导我?
select no
from shan
where account_number = '7111'
and area = 'O1139'
and ty = '1'
and ty1 = 'T'
and date = '12-AUG-10'
and code in (case 'B'
when 'B' then 'j01','j05'
when 'C' then 'j02','j06'
else 'j03'
end);
i need to check code value in 'j01' or 'j05' , how can i rewrite the query anyone please direct me in a right way?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
case 仅适用于标量值。
提供的解决方案将是一种替代方案。
case works for scalar values only.
The solution provided would be an alternative.