[英]Comparing nulls in Oracle SQL
如果两个值相等,如果它们可以是除以下之外的空值,是否有更好的比较方法?
a = b or (a is null and b is null)
您可以:
a=b or coalesce(a,b) is null
你也可以使用nvl
,但这是一个遗留函数,并且coalesce
更快,因为它在第一个非null时停止
您可以使用DECODE(A,B,1) = 1
DECODE在处理NULL时是不规则的。
但是我觉得目的不明确,更喜欢vol7ron的答案。 清晰地减少打字!
您可以使用nvl将其包装并将其设置为您的集合中不期望的某个值:
NVL(a,0) = NVL(b,0)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.