中易网

mysql中group by max如何提取最大的一条记录

答案:2  悬赏:20  
解决时间 2021-01-11 12:23
mysql中group by max如何提取最大的一条记录
最佳答案
有个需求,一直没有解决,在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中执行结果有误,呵呵。
全部回答

楼上那个id 虽然是最大的,但是其他的数据并不是该ID对应的数据;
select * from
 (select * from smyl_push_msg t where t.inhabitant_id=1 order by t.created_time desc LIMIT 10000000000) s
group by s.msg_type
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
请问通过XX宝向陌生人借款1000元打了2000借条
婺江路离杭州北高速路口怎么走
想成为运满满中介都需要哪些东西
从齐河去济南方特怎么走
串口监视精灵怎么用啊
为什么护照上要写出生地点
起亚K52.0的动力怎么样??油耗多少钱???
求大神解答DNF巅峰时期的时候和CF巅峰时期那
米行一队怎么去啊,有知道地址的么
男生们最爽的一次啪啪经历是怎样的
螺丝攻是什么东西?说通俗一点,谢谢!
一斤新鲜核桃烘干后有多重
国内有什么比较精品的室内设计网站?类似家墨
苹果iPad mini2 苹果ME280CH/A 苹果ME277
put it away和put away it有什么区别
推荐资讯
大神帮帮忙,revit对造价有用吗
世界著名的三峡水电站位于长江的(  )A.
佳能彩色激光打印机7010c和7200c哪个好?7010
可爱的小鹿作文230个字
联通叠加包怎么加
除了摘抄好词好句收获还有谁摘抄什么
韩文上面E中间一横下面一个人是什么字啊啊啊
用黄粉虫养鸡的成本比用饲料养鸡成本高多少?
儿童蛙式滑板车哪个牌子好,儿童蛙式滑板车
汉武帝当年经济状况如何。这源于哪一治世时期
同样的显卡AMD860处理器和G4560玩游戏FPS差距
上海哪里卖帽子多,最好是店面多点有的多点款
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?