Oracle 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