【发布时间】:2018-10-01 08:39:03
【问题描述】:
假设我有一个TABLE a,其中COLUMN data 是要加入 用于其他2 个表(TABLE b 和TABLE c)的,因为我想得到一个@ 987654325@ 在b 或c。
问题是 a.data 将 only 与 b.data 匹配 或仅 与 c.data 匹配。
- 如何根据
a获取b.info或c.info?
我尝试了多远:
在多次尝试明显错误的语法之后,我做的最好的是在 2 个查询中:
SELECT b.info FROM a INNER JOIN b ON a.data = b.data
SELECT c.info FROM a INNER JOIN c ON a.data = c.data
我想实现如下所示:
SELECT alias.info FROM a INNER JOIN (b OR c) AS alias ON a.data = alias.data
我为什么要这样做
实际上我可以得到我想要的数据并使用 PHP 来处理它。但是我正在做一个巨大的过程(与我的问题无关)而不是一个好的查询,并且页面需要太多时间来加载。
【问题讨论】:
-
使用 UNION 或 LEFT JOIN
标签: mysql sql join conditional-statements