首页 > 解决方案 > 根据 Case 语句连接两个表

问题描述

我有两张桌子。我想将它们加入同一列,但用于加入它们的值不同。

例如 select * from table A join table B on A.name=B.name

但在我的情况下,A.name 和 B.name 不相同 A.name='apple' 应该加入 B.name='apple' 或 B.name='orange' 的 B 中的每一行。这可能使用 Case 语句或任何其他方式吗?

标签: sqldatabasegoogle-bigquery

解决方案


on您可以在子句上使用更复杂的逻辑:

from a join
     b
     on a.name = 'apple and b.name in ('apple', 'orange')

推荐阅读