在我的数据库中有100条记录,但我只想按降序排列前10条记录,而不是按降序排列整个数据库。
例: 数据库:记录
1,2,3,4,5,6,,7,8,9,10,11,12....................100.
前10条记录:
10,9,8,7,6,5,4,3,2,1
答案 0 :(得分:8)
如果我理解你的问题,
SELECT x FROM (SELECT x FROM table ORDER BY x ASC LIMIT 10) ORDER BY x DESC
括号中的SELECT
选择前10个记录(按升序x
),外SELECT
按您想要的顺序对它们进行排序。
答案 1 :(得分:5)
使用LIMIT
。请参阅mySQL manual on SELECT
例如:
SELECT id FROM tablename ORDER BY ID LIMIT 0,10
你所展示的结果的转换可能最好用PHP array_reverse()
在PHP中完成,我想不出一个简单的mySQL方法来做到这一点。
答案 2 :(得分:5)
您可以使用此查询:
SELECT * FROM (SELECT * FROM table ORDER BY * ASC LIMIT 10)
ORDER BY * DESC ;
答案 3 :(得分:2)
使用LIMIT
。请参阅SELECT
例如:
SELECT id FROM tablename ORDER BY ID LIMIT 0,10
你所展示的结果的转换可能最好用PHP array_reverse()
在PHP中完成,我想不出一个简单的MySQL方法来做到这一点。
答案 4 :(得分:0)
使用limit。