【发布时间】:2021-09-25 03:56:39
【问题描述】:
我想在两个表上执行左连接。我将加入的字段是电子邮件地址。由于左侧的表 I 有两个可能不同的电子邮件字段,我希望如果第一封电子邮件的加入失败并返回空值,则在另一个电子邮件字段上执行第二次加入。最后,我想丢弃那些没有与两个连接中的任何一个匹配的条目。
我想过做这样的事情:
SELECT *
FROM a
LEFT JOIN b
ON
a.address1 = b.email
OR a.address2 = b.email
但是,这会返回一条错误消息,指出 LEFT OUTER JOIN cannot be used without a condition that is an equality of fields from both sides of the join。
实现这一目标的正确方法是什么?
【问题讨论】:
-
样本数据和期望的结果真的很有帮助。
标签: mysql sql google-bigquery left-join