【群答疑20210525-1】MySQL列名相同,出现两列问题

群问题:  mysql 里 left join会出现重复列 这种怎么解决啊

 

 这种一般是列名相同引起的,后面字段用括号加数字区分

 

 其实用using可以去重重复列

SELECT *  FROM  user_info_click1  a 
LEFT JOIN user_info_click1  b 
using(user_id);

 

 

 

等价于

SELECT *  FROM  user_info_click1  a 
LEFT JOIN user_info_click1  b 
on a.user_id=b.user_id;

 

 

总结:

-- 关联表查询全字段
select * from 表1 inner join 表2 on 表1.相同的列=表2.相同的列;
-- 关联表查询单字段
select 表1的列 from 表1 inner join 表2 on 表1.相同的列=表2 .相同的列
-- 关联表查询全字段(排除相同列)
select * from 表1 inner join 表2 using(相同的列);
-- 换成左链接
select * from u1 left join u2 on u1.id=u2.id; <=> select * from u1 left join u2 using(id);

 

posted @ 2021-05-25 21:54  HuaBro  阅读(858)  评论(0编辑  收藏  举报