提问人:Victoria 提问时间:9/27/2019 最后编辑:Salman AVictoria 更新时间:9/27/2019 访问量:1109
将 AND 运算符替换为 OR 以获得相同的输出
Replace AND operator with OR to get the same output
问:
我有这个代码:
IF (x>5 AND y=4) THEN
dbms_output.put_line("Y");
ELSE
dbms_output.put_line("N");
我的问题是:如果不能使用 AND 作为运算符,而是必须使用 OR 才能具有相同的逻辑并获得相同的结果,您如何更改代码?
答:
0赞
Verma Ashish
9/27/2019
#1
Or 和 AND 运算符具有完全不同的逻辑,您不能使用 AND 作为运算符,而是必须使用 OR 才能具有相同的逻辑并获得相同的结果。
1赞
Murmix
9/27/2019
#2
您可以使用德摩根定律来重写它:
NOT (p AND q) == (NOT p) OR (NOT q)
所以,就你而言
IF (x>5 AND y=4) THEN "Y" ELSE "N"
IF (x<=5 OR y<>4) THEN "N" ELSE "Y"
0赞
gustible
9/27/2019
#3
如果将行更改为如下所示,则它只能使用 OR 运算符:
如果 (x<=5 或 y!=4) 则 dbms_output.put_line(“N”);ELSE dbms_output.put_line(“Y”);=
结果是一样的,但逻辑略有不同。
上一个:SQL 根据列值条件返回行
评论
OR
不会返回相同的结果,所以我不明白这个问题。