Search code examples
mysqlsqljoininner-join

Better way to select all columns from first table and only one column from second table on inner join


Graphical Explaination

Table 1's columns:

|a|b|c|d|e|

Table 2's columns:

|a|x|y|z|

I want only a, b, c, d, e, x. I only want column 'a' from table 1, not column 'a' from table 2.

Wordy Explaination

I have two tables with one column sharing a common name. If I use a Select * and use an inner join, I get all the columns returned including two columns with the same name.

I want to select everything from the first table, and only one column from the second table. Right now I am specifing every single column I need, which is a drag. Is there an easier way to grab everything from the first table and only the one column I want from the second table?

Thanks in advance.


Solution

  • you need to specify the column name of the second table if it has the same columnName with the other table, you need to supply an ALIAS on it,

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