选择除一列以外的左连接

时间:2012-01-17 09:13:00

标签: php mysql left-join

我选择了:

SELECT t1.*, t2.* from t1 left join t2 on t2.id = t1.id 

当id存在或不存在于t2时我想要t2中的所有列,除了t2.id(可以是NULL)。

如果没有打印出查询中的所有列名,有没有办法做到这一点?

THX

4 个答案:

答案 0 :(得分:3)

不,您必须指定所有感兴趣的列或使用通配符。

答案 1 :(得分:1)

SELECT *
FROM t1
LEFT JOIN t2
  USING (id);

顺便说一下,原因是,为什么命名您要使用的列在数据库中以相同的方式连接是一个好主意。

答案 2 :(得分:0)

如果两个表只有id作为公共列,您也可以使用:

SELECT *
FROM  t1 
  NATURAL LEFT JOIN
      t2 

答案 3 :(得分:0)

只需切换请求表的顺序 代替

SELECT t1.*, t2.* from t1 left join t2 on t2.id = t1.id 

使用

SELECT t2.*, t1.* from t1 left join t2 on t2.id = t1.id