如何联接具有相同列名的两个表,使其中一个表的值保持不变

时间:2018-09-04 12:25:58

标签: postgresql

我有这两个表:

Table1
-------
id|a|b|c|d|
1 |0|1|0|6|

Table2
-------
id|a|c|
1 |3|2|

我如何连接这两个表,同时保留来自table2的值以及来自table1的列,以便此后的表如下所示:

TableJoined
-------
id|a|b|c|d|
1 |3|1|2|6|

尝试过

SELECT * FROM Table2 a JOIN Table1 b WHERE a.id = b.id;

希望提到的第一个表是替代程序

或者我想你可以做到:

SELECT b.id, a.a, b.b, a.c, b.d FROM Table2 a JOIN Table1 b WHERE a.id = b.id;

1 个答案:

答案 0 :(得分:1)

您可以通过使用表别名限定*来实现:

SELECT a.* FROM Table2 a JOIN Table1 b WHERE a.id = b.id;

但是,除了临时查询外,您应该从不*列表中使用SELECT。 (例外情况是count(*),可以使用)。