如果两个值相等,如果它们可以是除以下值之外的空值,是否有更好的比较方法?
a = b or (a is null and b is null)
答案 0 :(得分:5)
你可以:
a=b or coalesce(a,b) is null
您也可以使用nvl
,但这是遗留函数,coalesce
更快,因为它在第一个非空
答案 1 :(得分:4)
您可以使用DECODE(A,B,1) = 1
DECODE在处理NULL时是不规则的。
但是我觉得目的不明确,更喜欢vol7ron的回答。清晰地减少打字!
答案 2 :(得分:0)
您可以使用nvl将其包装并将其设置为您的集合中未预期的某个值:
NVL(a,0) = NVL(b,0)