码迷,mamicode.com
首页 > 其他好文 > 详细

说说左连接出现重复记录的问题

时间:2016-10-03 16:55:47      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

 举个例子两个表主表为A  从表为B

A       

aid place
1 大连
2 上海
3 北京

 

 

 

 

B

bid aid type name
1 1 学生
2 1 老师
3 2 领导
4 1 学生
5 2 老师

 

 

 

 

 

下面我想查询type为学生的A表和B表的所有信息

select * from A join B on a.aid=b.aid where B.type="学生";

得到的结果是:

技术分享

 

如果我查询type为学生的A表信息

select a.* from A join B on a.aid=b.aid where B.type="学生";

得到的结果为:

技术分享

所以!!!就是所谓的重复,

如果说你想查找type为学生的都来自于哪个place     可以直接distinct  ,例如:

select distinct a.* from A join B on a.aid=b.aid where B.type="学生";

得到的结果为:

技术分享

但是就像上文提到的如果我查询type为学生的A表信息  

技术分享,所得到的两个一样的数据其中包含的意义其实是不一样的。

 

说说左连接出现重复记录的问题

标签:

原文地址:http://www.cnblogs.com/moon1223/p/5929215.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!