加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql应用使用mysql的disctinct group by查询不重复记录

发布时间:2020-12-12 01:04:50 所属栏目:MySql教程 来源:网络整理
导读:《Mysql应用使用mysql的disctinct group by查询不重复记录》要点: 本文介绍了Mysql应用使用mysql的disctinct group by查询不重复记录,希望对您有用。如果有疑问,可以联系我们。 有个需求,一直没有解决,在google上找了半天,给出的方案没有一个能用了,最后

《Mysql应用使用mysql的disctinct group by查询不重复记录》要点:
本文介绍了Mysql应用使用mysql的disctinct group by查询不重复记录,希望对您有用。如果有疑问,可以联系我们。

有个需求,一直没有解决,在google上找了半天,给出的方案没有一个能用了,最后鬼使神差搞定了.
  ?是这样的,假设一个表:

id???f_id????value???
1?????2?????????a???
2?????2?????????b???
3?????5?????????c???
4?????9?????????c???
5?????9?????????a???
6?????6?????????d??

id???f_id????value
1?????2?????????a
2?????2?????????b
3?????5?????????c
4?????9?????????c
5?????9?????????a
6?????6?????????d
  ?id是主键,f_id是外键,我需要获得不重复的外键f_id的数据,如果用group?by?或者distinct很容易搞定


select?f_id?from?table?group?by?f_id
select?distinct?f_id?from?table
  ?但如果再想在结果中得到id值的话,不管怎么都会乱.比如我想在结果中用id进行排序,诸如”select?distinct?f_id,?id?from?table?order?by?id?desc”完全白费.在google上看了大量的例子,发现需要在select中对id做手脚,让mysql知道除了f_id外,对id应该进行如何的操作.诸如Max,?Min,?Avg,Sun..都是可以的,于是变成以下的代码就搞定了……

select?f_id,?max(id)?as?id?from?table?group?by?f_id?order?by?id?desc
  ?搞定,网上有个文章很接近答案,但是他没有”as?id”,导致在我的mysql中执行结果有误,呵呵.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读