我选择了:
SELECT t1.*, t2.* from t1 left join t2 on t2.id = t1.id
当id存在或不存在于t2时我想要t2中的所有列,除了t2.id(可以是NULL)。
如果没有打印出查询中的所有列名,有没有办法做到这一点?
THX
答案 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