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

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

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

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

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

 其实用using可以去重重复列

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

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

等价于

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

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

总结:

-- 关联表查询全字段
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);