所以,我有两张桌子,其中一张是这样的:
表:data
id | col_1 | col_2 | col_3 | col_4 ------------------------------------------------------ 1 | 167 | 12 | 15 | something1 2 | 198 | 27 | 12 | something2 3 | 253 | 15 | 17 | something3
和表:catalog
id | col_1 ----------------- 12 | red 15 | yellow 17 | pink 27 | green
现在,我要做的是从col_1
表中获取col_2
,col_3
,col_4
和data
,而不是获取根据{{1}} col_2
,col_3
和col_1
的值应由catalog
表的catalog
替换。
例如,我希望它为数据表的每一行返回以下信息:
167 | red | yellow | something1 198 | green | red | something2 253 | yellow | pink | something3
我试过了:
id
但没有效果和惊喜。
我根本无法找到如何将一个表的多个列内部连接到另一个表的单个列,而Google并没有给出很大的帮助。我实际上不知道我是否正在使用正确的关键字进行搜索。
答案 0 :(得分:3)
您必须为表名提供别名,因为它不知道目录所指的位置。
SELECT data.col_1, c1.col_1, c2.col_1, data.col_4
FROM data
INNER JOIN catalog c1 ON data.col_2 = c1.id
INNER JOIN catalog c2 ON data.col_3 = c2.id