更好的方法是从第一个表中选择所有列,而在内部联接中只从第二个表中选择一列

时间:2012-12-22 06:16:50

标签: mysql sql join inner-join

图形说明

表1的栏目:

|a|b|c|d|e|

表2的栏目:

|a|x|y|z|

我只想要a,b,c,d,e,x。我只想要表1中的列a,而不是表2中的列a。

Wordy Explaination

我有两个表,其中一列共享一个公用名。如果我使用Select *并使用内部联接,我将返回所有返回的列,包括两个具有相同名称的列。

我想从第一个表中选择所有内容,而从第二个表中只选择一列。现在我正在指定我需要的每一列,这是一个拖累。是否有更简单的方法从第一个表中获取所有内容,只从第二个表中获取我想要的一列?

提前致谢。

1 个答案:

答案 0 :(得分:28)

如果第二个表与另一个表具有相同的columnName,则需要指定第二个表的列名,需要在其上提供ALIAS

SELECT  tb1.*, tb2.x
FROM    tableA tb1
        INNER JOIN tableB tb2
            ON tb1.a = tb2.a