PL/SQL - 关系运算符
-
简述
关系运算符比较两个表达式或值并返回布尔结果。下表显示了 PL/SQL 支持的所有关系运算符。让我们假设变量 A 持有 10 和 变量 B 持有 20,然后 -操作员 描述 例子 = 检查两个操作数的值是否相等,如果是,则条件为真。 (A = B) 是不正确的。 !=
<>
~=
检查两个操作数的值是否相等,如果值不相等则条件为真。 (A != B) 是真的。 > 检查左操作数的值是否大于右操作数的值,如果是,则条件为真。 (A > B) 不正确。 < 检查左操作数的值是否小于右操作数的值,如果是,则条件为真。 (A < B) 是真的。 >= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件为真。 (A >= B) 不是真的。 <= 检查左操作数的值是否小于或等于右操作数的值,如果是则条件成立。 (A <= B) 为真 -
例子
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