我试图在交互式SQL中使用if..elseif..else条件并执行查询但得到语法错误。
我已经在官方网站上查看了一些伪代码,并通过一些修改执行相同的代码,但它给出了相同的语法错误。
在官方网站上我找到了伪代码: - http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc01031.0400/doc/html/asc1252677186261.html
执行后给出以下语法错误。
错误:无法执行语句。第3行'ELSEIF'附近的语法错误SQLCODE = -131,ODBC 3状态='42000'第1行,第1列
代码有一些修改: -
SELECT
(IF 1=1 THEN 1
ELSEIF 2=2 AND 3=3 THEN 1.5
ELSE 2
END)
伪代码无需修改: -
SELECT (IF Price<1000 THEN 1
ELSEIF Price >= 1000 AND Price <1500 THEN 1.5
ELSE 2
END)
您正在尝试使用if expression而不是if语句。 if表达式不支持elseif。解决方案是使用case语句,如您所见。