Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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.

like image 576
Zamicol Avatar asked Dec 22 '12 06:12

Zamicol


People also ask

How do I select multiple tables without joining?

You could try something like this: SELECT ... FROM ( SELECT f1,f2,f3 FROM table1 UNION SELECT f1,f2,f3 FROM table2 ) WHERE ...


1 Answers

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
like image 52
John Woo Avatar answered Oct 14 '22 04:10

John Woo