我可以在搜索的case sql语句中有多个布尔表达式吗?

时间:2011-07-29 18:15:31

标签: sql case

我正在尝试基于许多布尔表达式创建搜索的case sql语句。

例如

select CASE a = b OR c = d OR e = f OR g = h
THEN 'x' ELSE 'y' END
from table_name

我一直收到以下错误:Incorrect syntax near '='.

我是否在sql中做了本质上错误/非法的事情,或者这是我可以解决的问题?如果它是可以修复的,我该怎么办?

谢谢!

3 个答案:

答案 0 :(得分:3)

select CASE when ( a = b OR c = d OR e = f OR g = h )
THEN 'x' ELSE 'y' END
from table_name

格式为CASE..WHEN..THEN..ELSE..END。你刚刚错过WHEN

答案 1 :(得分:2)

我觉得自己真的很蠢。在案件结束后我错过了......

应该是

select CASE when a = b OR c = d OR e = f OR g = h
THEN 'x' ELSE 'y' END
from table_name

然后它有用......

答案 2 :(得分:1)

您错过了WHEN关键字

SELECT 
CASE WHEN a = b OR c = d OR e = f OR g = h
THEN 'x' 
ELSE 'y' 
END
FROM table_name
相关问题