MySQL - 左连接,选择左侧的所有列,右侧表中的几列,

时间:2014-12-20 07:35:45

标签: mysql sql left-join

我正在尝试将两个表连接在一起,如下所示,在“*”部分中,我无法执行以下操作,

操作:想要选择左侧的所有列,只想将右表中的几个相关列附加到左表。而不是像left_table.column1,left_table.column2 ......这样写所有列是否有另一种节省手动编码的方法?

SELECT * FROM nutrients LEFT JOIN measures ON nutrients.name=measures.name

3 个答案:

答案 0 :(得分:7)

是的,在*之前添加表名以选择表的所有列

SELECT nutrients.*, measures.colX
FROM nutrients 
LEFT JOIN measures ON nutrients.name=measures.name

答案 1 :(得分:0)

SELECT nutrients.*,
       measures.name,
       measures.column2,
       measures.column3
FROM nutrients
LEFT JOIN measures ON nutrients.name=measures.name

您可以使用此查询从第1个表(左表)和右表中的特定列中选择所有。

希望这能满足您的需求。

答案 2 :(得分:0)

您可以使用*选择所有列,如下所示

SELECT nutrients.*,
       measures.name,
       measures.col2
FROM nutrients
LEFT JOIN measures ON nutrients.name=measures.name