sql - IF 语句而不是选择

标签 sql oracle plsql informix

在Informix 中它可以工作,在Oracle 中如何做到这一点?

IF (uzel NOT IN (SELECT a.uzel FROM user_setup.menu a WHERE a.vetka <> a.uzel
                             AND a.vetka IN (SELECT vetka FROM user_setup.param_menu)))
          THEN
             --;
          END IF;

最佳答案

尝试这个:

DECLARE
  temp NUMBER;
  v_uzel user_setup.menu.uzel%TYPE;
BEGIN    
  SELECT COUNT(*) 
  INTO temp
  FROM dual
  WHERE EXISTS (SELECT A.uzel 
                FROM user_setup.menu A 
                WHERE A.vetka <> A.uzel
                AND A.uzel = v_uzel
                AND A.vetka IN (SELECT vetka FROM user_setup.param_menu));


  IF temp < 1 THEN
    -- code here 

  END IF;
END;

关于sql - IF 语句而不是选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33295335/

相关文章:

sql - 无法根据“不在哪里”进行过滤

sql - 用于检查一列是否包含另一列值的正则表达式

java - Spring RowMapper 返回一个结果的 ArrayList

sql - 选择作为 DML 命令

oracle - 蟾蜍分割我的输出

oracle - 不在 PL/SQL 中传递 OUT 参数

oracle - 未在规范中声明就无法调用 Oracle 包函数

mysql - 内连接返回重复的注册表

sql - 使用不同的 WHERE 条件选择

sql - 仅从 sql 中的 Datetime 字段更新时间