mysql某列值最大的行,如何在MySQL中为列选择最大值的行?

*None of other available answers solved my problem

I have a table t like this

id,cc,count

'1','HN','22'

'1','US','18'

'1','VN','1'

'2','DK','2'

'2','US','256'

'3','SK','1'

'3','US','66310'

'4','UA','2'

'4','US','263'

'6','FR','7'

'6','US','84'

'9','BR','3'

I want to get the rows for ids with maximum count, like below:

id,cc,count

'1','HN','22'

'2','US','256'

'3','US','66310'

'4','US','263'

'6','US','84'

'9','BR','3'

My current code is like this but I am not getting the expected results:

SELECT t.* FROM t

JOIN (

SELECT

t.id,t.cc

,max(t.count) as max_slash24_count

FROM t

group by t.id,t.cc

) highest

ON t.count = highest.max_slash24_count

and t.cc = highest.cc

Can anybody help me out?

解决方案

Remove CC column from group by. Try this.

SELECT t.* FROM t

JOIN (

SELECT

t.id

,max(t.count) as max_slash24_count

FROM t

group by t.id

) highest

ON t.count = highest.max_slash24_count

and t.id= highest.id

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值