我有一个带有时间戳行的表:比如说,一些作者提供的信息:
CREATE TEMPORARY TABLE `feed` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
`author` VARCHAR(255) NOT NULL,
`tm` DATETIME NOT NULL
);
我想按tm DESC
这样的方式排序,一个作者的行确实粘在一起。
例如,拥有
INSERT INTO `feed` VALUES
( 5, 'peter', NOW()+1 ),
( 4, 'helen', NOW()-1 ),
( 3, 'helen', NOW()-2 ),
( 2, 'peter', NOW()-10 ),
( 1, 'peter', NOW()-11 );
结果集应该按 排序tm DESC
,但所有peter的帖子都排在第一位,因为他的帖子是最新的。下一组行应该来自author
第二个最近的帖子。等等。
5 peter
2 peter
1 peter
3 helen
2 helen
首先,我们按最近的帖子对作者进行降序排序。然后,有了这个“评级”,我们按照最近的帖子排序的作者对提要进行排序。