在PHP中对select语句进行排序的最佳方法

时间:2012-10-04 05:05:36

标签: php arrays sorting

你好,任何人都可以指出我在这里正确的方向。从表格中选择结果但以某种方式显示结果的最佳方法是什么,请参阅下面的首选排序。

10, 9, 8, 6, 5, 4, 3, 2, 1

将其转化为

6, 7, 8, 9, 10

按顺序显示?

到目前为止,我有这个......

$result = mysql_query("SELECT * FROM Chat ORDER BY Time DESC LIMIT 5");

4 个答案:

答案 0 :(得分:4)

假设这些数字不仅仅是1-10,请将其包装在子查询中并重新排序。

SELECT *
FROM
   (
          SELECT *
          FROM Chat 
          ORDER BY `Time` DESC
          LIMIT 5           -- <=== change this to the number of records you want
   ) a
ORDER BY `TIME`

SQLFiddle Demo

答案 1 :(得分:0)

尝试以下代码

$result = mysql_query("SELECT * FROM Chat ORDER BY Time ASC LIMIT 5,5");

答案 2 :(得分:0)

查询将是这样的

$result = mysql_query("select * from (SELECT * FROM Chat ORDER BY Time ASC LIMIT 0,5) order by time desc");

它将首先按降序排列所有结果,之后取前5行并按升序排列。

答案 3 :(得分:0)

$result = mysql_query("SELECT * FROM Chat ORDER BY Time ASC LIMIT 5,5");

按升序排序,从第6个结果开始,返回5行。