如何使mysql关联查询返回结果集中相同字段不同数据只返回一条 5

 我来答
智者总要千虑
高粉答主

2019-09-28 · 说的都是干货,快来关注
知道顶级答主
回答量:7.9万
采纳率:88%
帮助的人:1.4亿
展开全部
select *
from table ###where not exists (select * from table ###where # = #and ## < ##)
在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,只有用二重循环查询来解决。
给个例子把,比如:表table_a 4条数据id A B C D01 ab 1a2 1b2 12102 ab 2a3 3b3 4a103 ac 1a2 1b2 12104 ac 2a4 3b2 52g何让A字段重复取条 比01 ab 1a2 1b2 12103 ac 1a2 1b2 121
保留相同A值id行select *from table_a awhere not exists (select 1 from table_a bwhere b.A = a.Aand b.id < a.id)
hyx0077
2019-09-29 · TA获得超过126个赞
知道小有建树答主
回答量:297
采纳率:63%
帮助的人:44.6万
展开全部
这个我也不知道呀,如果你的b表还有id=3.4···这些数据,查询的结果的列又要求要变吧,最好的办法就是写存储过程或者函数来处理。如果结果的列名是固定的就不用存储过程这些也能简单实现。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云南新华电脑学校
2019-09-29 · 百度认证:云南新华电脑职业培训学校官方账号
云南新华电脑学校
云南新华电脑学校是经云南省教育厅批准成立的省(部)级重点计算机专业学校,采用三元化管理模式,教学设备先进,师资雄厚学生毕业即就业,学院引进了电商企业入驻,创建心为电商创业园区,实现在校即创业
向TA提问
展开全部
select max(id) as id,fid,title,date from table group by fid,title,date
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式