【问题标题】:How to Use If statement inside select in oracle 12c如何在 oracle 12c 中的 select 中使用 If 语句
【发布时间】: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


【解决方案1】:

尝试使用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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多