关系运算符比较两个表达式或值,并返回一个布尔结果。下表列出了所有PL/SQL支持的关系运算符。假设变量A=10,变量B=20,则:
运算符 | 描述 | 示例 |
---|---|---|
= | 检查两个操作数的值是否相等,如果是的话那么条件为真。 | (A = B) 结果为 false. |
!= <> ~= |
检查两个操作数的值是否相等,如果值不相等,则条件变为真。 | (A != B) 结果为 true. |
> | 检查左边的操作数的值是否大于右操作数的值,如果是的话那么条件为真。 | (A > B) 结果为 false. |
< | 检查左边的操作数的值是否小于右操作数的值,如果是的话那么条件为真。 | (A < B) 结果为 true. |
>= | 检查左边的操作数的值是否大于或等于右操作数的值,如果是的话那么条件为真。 | (A >= B) 结果为 false. |
<= | 检查左边的操作数的值是否小于或等于右操作数的值,如果是的话那么条件为真。 | (A <= B) 结果为 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