mysql,分组,对分组的进行过滤,查找最新的

gflhx 发布于 2013/01/09 13:48
阅读 1K+
收藏 0

云原生2.0展望丨从“小众”到“首选”,推动云原生产业落地华为云作用几何?>>>

id  uid   fid  mes    h_date
1   1      2   gge   2013-01-04 16:07:36
2   1      3   agegg  2013-01-03 16:07:36
3   1       2  agea    2013-01-05 16:07:36
4   2     3   gggg    2013-01-09 16:07:36
5   1     3    gggee  2013-01-07 16:07:36

uid 是自己的id,fid是对方的id,mes是消息,h_date是时间
现在想做的就是根据fid分组,查找uid为1 的最新的数据。不能重复。
结果是id为3和5的这两条数据

加载中
0
iSea
iSea

建议你看看看

OSChina 的留言表设计说明
0
八宝旗
八宝旗

select t.* from table as t

,(select max(id) as mid from table where uid=1 group by fid) as t2

where t.id=t2.mid;



八宝旗
八宝旗
回复 @dbtop : 思路确实是一样,我想当然认为ID是自增的,如果不是自增,where就需要稍稍复杂点。
d
dbtop
其实,id大的未必是最新的。不过我也认为就是这个思路就应该是这样的。
0
StormFour
StormFour
MYSQL处理这类问题真是蛋疼
返回顶部
顶部