我需要一个CASE语句来返回一个字符串列表但我有一些语法问题.生成的SQL应该是这样的:
SELECT * FROM FRUIT WHERE COLOR IN ('RED', 'YELLOW')
Run Code Online (Sandbox Code Playgroud)
我正在尝试做什么(这不起作用):
SELECT * FROM FRUIT WHERE COLOR IN
CASE
WHEN TYPE = *something*
THEN ('RED', 'YELLOW')
ELSE ('GREEN')
END
Run Code Online (Sandbox Code Playgroud)
这有效:
SELECT * FROM FRUIT WHERE COLOR IN
CASE
WHEN TYPE = 1
THEN 'RED'
ELSE 'GREEN'
END
Run Code Online (Sandbox Code Playgroud)
我得到的错误:
ORA-00907 missing right parenthesis
Run Code Online (Sandbox Code Playgroud)
当我使用多个COLOR ='X'或COLOR ='Y'时,它可以工作,但我想知道是否有一种方法只能使用一个CASE语句.提前致谢.