【发布时间】:2017-05-31 13:47:16
【问题描述】:
我正在尝试从表中进行选择,我的问题是该表中的某些列(外键)可以为空。
这些外键中有2个是独占的,如果其中一个有数据,则另一个为空,反之亦然。因此,当我尝试编写where 子句时,其中之一将始终为空,并且我无法检索任何数据。
例子:
Select
t1.col1, t1.col2, t1.pk1, t2.col3, t2.col4, t2.pk2, t3.col5, t3.pk3
from
t1, t2, t3
where
t2.pk2 = t1.pk2
and t3.pk3 = t1.pk3
其中一个子句将始终为假,因为其中一列在 table1 上将始终为空。我理想的解决方案是在表 1 上的值为 null 的情况下忽略特定的 where 子句,但我不知道该怎么做。
提前致谢。
【问题讨论】:
标签: sql select plsql where-clause