Plsql PL/SQL块的Oracle执行 声明 a数字:=5;b编号:=空;c编号:=10; 开始 如果a>b且ab获得空结果等同于返回false。不符合您的和标准a不大于null。因此a仍然等于5。挑剔一点:“a”将在执行后取消声明-它是本地块:) Declare a number := 5; b number := null; c number := 10; Begin if a > b AND a < c then a := c * a; end if; End;

Plsql PL/SQL块的Oracle执行 声明 a数字:=5;b编号:=空;c编号:=10; 开始 如果a>b且ab获得空结果等同于返回false。不符合您的和标准a不大于null。因此a仍然等于5。挑剔一点:“a”将在执行后取消声明-它是本地块:) Declare a number := 5; b number := null; c number := 10; Begin if a > b AND a < c then a := c * a; end if; End;,plsql,Plsql,执行后“a”的值是多少 为什么答案是5?请解释Null不是一个值。将数字与null进行任何比较都将导致null。尽管在您的语句中不返回true或false,但使用a>b获得空结果等同于返回false。不符合您的和标准a不大于null。因此a仍然等于5。挑剔一点:“a”将在执行后取消声明-它是本地块:) Declare a number := 5; b number := null; c number := 10; Begin if a > b AND a < c then

执行后“a”的值是多少


为什么答案是5?请解释Null不是一个值。将数字与null进行任何比较都将导致null。尽管在您的语句中不返回true或false,但使用
a>b
获得空结果等同于返回false。不符合您的
标准<代码>a
不大于
null
。因此
a
仍然等于5。

挑剔一点:“a”将在执行后取消声明-它是本地块:)
Declare
  a number := 5; b number := null; c number := 10;
Begin
  if a > b AND a < c then
    a := c * a;
  end if;
End;