mysql 分组 group by, 排序 取每条记录中,时间最大的一条记录
SELECT A.* FROM test A,
(SELECT aid, MAX(day) max_day FROM test GROUP BY aid) B
WHERE A.aid = B.aid AND A.day = B.max_day
ORDER BY a.install DESC
以下是 test 表,测试sql
CREATE TABLE IF NOT EXISTS `test` (
`id` int(10) unsigned NOT NULL auto_increment,
`install` int(10) unsigned NOT NULL,
`day` int(10) unsigned NOT NULL,
`aid` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=12 ;
INSERT INTO `test` (`id`, `install`, `day`, `aid`) VALUES
(1, 1232, 20080808, 1),
(2, 2321, 20080809, 2),
(3, 1236, 20080810, 3),
(5, 4212, 20080809, 1),
(6, 2312, 20080810, 1),
(7, 1432, 20080811, 1),
(8, 2421, 20080808, 2),
(9, 4245, 20080811, 2),
(10, 5654, 20080810, 2),
(11, 412, 20080808, 3);
http://download.farsight.com.cn/download/pdf/Farsight090607-android.pdf
mysql 分组 排序 取时间最大的一条记录
MySQL分组排序示例
最新推荐文章于 2025-09-27 19:58:24 发布
本文提供了一个MySQL查询示例,展示了如何通过分组和排序获取每个分组中时间最新的记录。具体操作包括使用子查询确定每个aid的最大day值,并以此筛选出相应的记录。
1139

被折叠的 条评论
为什么被折叠?



