是否可以实现我在下面的 SQL 查询中尝试做的事情? 我想检查项目名称是否与给定列表中的任何一个匹配。
select
case item_name
when any ('PEN', 'PENCIL', 'PAPER', 'ERASER') then 'STATIONARY'
else 'OTHER'
end is_stationary
from items;
我试过这个查询,似乎不可能。错误信息是,
ORA-00936: missing expression
00936. 00000 - "missing expression"
*Cause:
*Action:
Error at Line: 29 Column: 10
是否有任何其他解决方法来实现此目的?
最佳答案
试试这个
select
case when item_name IN ('PEN', 'PENCIL', 'PAPER', 'ERASER') then 'STATIONARY'
else 'OTHER'
end is_stationary
from items;
关于sql - 是否可以在 Oracle SQL 中将 CASE 与 ANY() 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18462402/