我必须比较两个具有相同结构的表(int not null,int not null,varchar2)。在这两个表field3
中都是可为空的。
我有下一个 SQL:
Select
t1.field1, t1.field2, t1.field3)
From
table1 t1
Where (field1,field2,field3)
not in
(select field1,
field2,field3
from table2 t2)
当其中任何一个(t1 或 t2)中的 field3 为 NULL 时,查询不会返回任何行。例如,我想从该数据中返回一行,但它什么也没返回。
表格1
field1 field2 field3
1 2 <NULL>
表 2
field1 field2 field3
1 2 'some text data'
使用 NVL 函数可以解决此类问题: NVL(field3, 'dummytextorwhatever')
但我不想在我的代码中包含如此可怕的东西。有什么想法可以用可空字段解决这个问题吗?
谢谢!