BigQuery Left Outer 出现 OR 条件错误

Posted

技术标签:

【中文标题】BigQuery Left Outer 出现 OR 条件错误【英文标题】:BiqQuery Left Outer with an OR condition Error 【发布时间】:2021-06-07 18:57:32 【问题描述】:

遇到了 BigQuery 限制,您不能在 JOIN 上使用 OR。在 Oracle 中运行良好。

寻找一些关于如何在另一件事中完成此任务的提示。

最后一个左外连接产生这个错误。

LEFT OUTER JOIN 不能在没有连接两边的字段相等的条件下使用。

select [col list]
from tablea a
   left outer join tableb b on a.id = b.ID
   left outer join tabled d on a.id = d.iid
   left outer join tablee e on b.id = e.pid and b.cid = e.id
   left outer join tablef f on d.runitid = f.id or e.runitid = f.id

【问题讨论】:

使用IN statement 【参考方案1】:

由于堆栈中存在额外的连接依赖关系,我将其切换为允许 OR 条件的 JOIN。将对结果进行更多验证。

【讨论】:

以上是关于BigQuery Left Outer 出现 OR 条件错误的主要内容,如果未能解决你的问题,请参考以下文章

Python 操作Redis

python爬虫入门----- 阿里巴巴供应商爬虫

Python词典设置默认值小技巧

《python学习手册(第4版)》pdf

Django settings.py 的media路径设置

Python中的赋值,浅拷贝和深拷贝的区别