PL/SQL - 关系运算符

关系运算符比较两个表达式或值并返回布尔结果。 下表显示了 PL/SQL 支持的所有关系运算符。 让我们假设 variable A 持有 10 而 variable B 持有 20,然后 −

运算符 描述 示例
= 检查两个操作数的值是否相等,如果是则条件为真。 (A = B) is not true.

!=

<>

~=

检查两个操作数的值是否相等,如果值不相等则条件为真。 (A != B) is true.
> 检查左操作数的值是否大于右操作数的值,如果是,则条件为真。 (A > B) is not true.
< 检查左操作数的值是否小于右操作数的值,如果是则条件为真。 (A < B) is true.
>= 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。 (A >= B) is not true.
<= 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。 (A <= B) is true

示例

DECLARE 
   a number (2) := 21; 
   b number (2) := 10; 
BEGIN 
   IF (a = b) then 
      dbms_output.put_line('Line 1 - a is equal to b'); 
   ELSE 
      dbms_output.put_line('Line 1 - a is not equal to b'); 
   END IF;  
   IF (a < b) then 
      dbms_output.put_line('Line 2 - a is less than b'); 
   ELSE 
      dbms_output.put_line('Line 2 - a is not less than b'); 
   END IF; 
    
   IF ( a > b ) THEN 
      dbms_output.put_line('Line 3 - a is greater than b'); 
   ELSE 
      dbms_output.put_line('Line 3 - a is not greater than b'); 
   END IF;  
   -- Lets change value of a and b 
   a := 5; 
   b := 20; 
   IF ( a <= b ) THEN 
      dbms_output.put_line('Line 4 - a is either equal or less than b'); 
   END IF; 
   IF ( b >= a ) THEN 
      dbms_output.put_line('Line 5 - b is either equal or greater than a'); 
   END IF;
   IF ( a <> b ) THEN 
      dbms_output.put_line('Line 6 - a is not equal to b'); 
   ELSE 
      dbms_output.put_line('Line 6 - a is equal to b'); 
   END IF;  
END; 
/ 

在 SQL 提示符下执行上述代码时,会产生以下结果 −

Line 1 - a is not equal to b 
Line 2 - a is not less than b 
Line 3 - a is greater than b 
Line 4 - a is either equal or less than b 
Line 5 - b is either equal or greater than a 
Line 6 - a is not equal to b  

PL/SQL procedure successfully completed 

❮ PL/SQL 运算符