【发布时间】:2019-01-11 07:39:59
【问题描述】:
无法在 Oracle 12c
中的Select 中使用 if 语句
SELECT if(2 * 5 = 10, '1', null) AS a
FROM DUAL;
【问题讨论】:
-
如果它如您所描述的那样存在,
if将是一个函数或表达式,而不是语句。
标签: sql database oracle if-statement select
无法在 Oracle 12c
中的Select 中使用 if 语句
SELECT if(2 * 5 = 10, '1', null) AS a
FROM DUAL;
【问题讨论】:
if 将是一个函数或表达式,而不是语句。
标签: sql database oracle if-statement select
尝试使用case:
SELECT CASE
WHEN 2 * 5 = 10 THEN '1' -- put the right condition here
ELSE null
END AS a
FROM DUAL;
另一种可能是Decode:
SELECT Decode(2 * 5, 10, '1', null) AS a
FROM DUAL;
请注意IF ... THEN ... ELSE ... END IF 的语法是PL/SQL,而不是SQL。
【讨论】: