用Distinct在MySQL中查询多条不重复记录值[1]

 我来答
户如乐9318
2022-10-08 · TA获得超过6655个赞
知道小有建树答主
回答量:2559
采纳率:100%
帮助的人:139万
展开全部

  在使用 mysql时 有时需要查询出某个字段不重复的记录 虽然mysql提供有distinct这个关键字来虚行过滤掉多余的重复记录只保留一条 但往往只用它来返回不重复记录的条数 而不是用它来返回颤誉备不重记录的所有值 其原因是distinct只能返回它的目标字段 而无法返回其它字段 这个问题让我困扰了很久 用distinct不能解决的话 我只有用二重循环茄毁查询来解决 而这样对于一个数据量非常大的站来说 无疑是会直接影响到效率的 所以我花了很多时间来研究这个问题 网上也查不到解决方案 期间把朋友拉来帮忙 结果是我们两人都郁闷了!

  下面先来看看例子

  table  id name   a   b   c   c   b

  库结构大概这样 这只是一个简单的例子 实际情况会复杂得多

  比如我想用一条语句查询得到name不重复的所有数据 那就必须使用distinct去掉多余的重复记录

  select distinct name from table

  得到的结果是:

  name  a  b  c

  好像达到效果了 可是 我想要得到的是id值呢?改一下查询语句吧:

  select distinct name id from table

lishixinzhi/Article/program/MySQL/201311/29591

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式