我正在尝试整理三个表中的数据。
tableA
,tableB
和tableC
。表A是我的主表,其中包含我想要提取的大部分数据。
表A通过a.id
和b.new_id
加入表B.但是,表C与表A没有任何关联,只能通过表B加入:b.board_id
和c.board_id
。
连接这些表的最佳方法是什么,以便变量代表表A?
我可以像这样连接表A和B:
SELECT * FROM tableA a LEFT JOIN tableB b ON a.id = b.new_id
,变量很好。但是当我尝试添加TableC时,显示的变量是TableC的变量,而不是TableA。
某些表包含相同的列名。我将如何加入这三个人?
答案 0 :(得分:1)
您的查询应如下所示:
SELECT a.col1 as a_col1, a.col2 as a_col2, . . .
FROM tableA a LEFT JOIN
tableB b
ON a.id = b.new_id left join
tablec c
on b.board_id = c.board_id;
您不必为所有列创建单独的名称,只需要为具有重复项的列创建。
答案 1 :(得分:1)
必须是这样的:
SELECT * FROM tableA a LEFT JOIN tableB b ON a.id = b.new_id join tableC c on c.board_id=b.board_id