-- -------------------------------------------------------- -- -- 表的结构 `score` -- CREATE TABLE IF NOT EXISTS `score` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(32) NOT NULL DEFAULT ‘‘, `scores` int(11) NOT NULL DEFAULT ‘0‘, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ; -- -- 转存表中的数据 `score` -- INSERT INTO `score` (`id`, `name`, `scores`) VALUES (1, ‘a‘, 97), (2, ‘b‘, 90), (3, ‘c‘, 98), (4, ‘d‘, 97), (5, ‘e‘, 66); select a.name, a.scores, (select count(id) from score where scores>=a.scores) as mc from score a limit 0, 10 select * from ( select a.name, a.scores, (select count(id) from score where scores>=a.scores) as mc from score a ) b where b.mc<=10 select * from (select (select count(id)+1 from score where scores>a.scores) as mc,a.name, a.scores from scroe a) b where b.mc<=10 order by b.mc