当联接列为 null 时联接到另一个表

  • 本文关键字:另一个 null oracle join null
  • 更新时间 :
  • 英文 :


我有一个从数据库中选择很多东西的sql,但是我希望这些数据只返回与我拥有的个人表匹配的数据。 我想从我的表 [population] 中加入一列 [vin_code],但是这里有空值,如果有空值,我想将表中的另一列连接到数据库中的另一个表。

我将在下面给出一个示例 sql:

Select distinct v.kegal_rntity_id
From vin v
Inner join ops$dami.population pop
On v.vin_code = pop.vin_code

然后pop.vin_code是空的我想在数据库中名为 z 列的表上联pop.vis_code zegal_rentity z.vis_code

所以像

join zegal_rentity z
On pop.vis_code = z.vis_code

但我只想这样做pop.vin_code是空

由于示例数据不可用,我无法测试解决方案,但尝试使用基于条件的outer join进行以下查询。

Select distinct v.kegal_rntity_id
From ops$dami.population pop
Left join vin v 
On v.vin_code = pop.vin_code
Left join zegal_rentity z
On (case when pop.vin_code is null and
pop.vis_code = z.vis_code then 1 end = 1);

干杯!!

相关内容

  • 没有找到相关文章

最新更新