将结果限制在最后10

时间:2011-09-05 10:37:14

标签: php mysql

如何只显示mysql查询的最终结果?

我希望在输出结果时忽略最后10个结果之前的任何内容。

<?php
$query = mysql_query("SELECT * FROM graphs WHERE sid=2 ORDER BY id");
while($info = mysql_fetch_array($query)){
    $graph_id = $info['id'];
    $graph_info = $info['labels'];
    $graph_fig = $info['figures'];

    echo "<label>" . $graph_info .":<span style='background-color: #06F;'>" . $graph_fig . "</span></label>";
}
?>

修改的 我忘了提到结果必须按照id列排序的ASCENDING顺序显示。

4 个答案:

答案 0 :(得分:13)

SELECT * FROM (SELECT * FROM graphs WHERE sid=2 ORDER BY id DESC LIMIT 10) g ORDER BY g.id

获取最后10条记录,但结果集仍按asc顺序排列。

答案 1 :(得分:5)

订单降序:

ORDER BY id DESC LIMIT 10

答案 2 :(得分:4)

SELECT * FROM graphs WHERE sid=2 ORDER BY id DESC LIMIT 10;

说明:默认情况下,ORDER BY的结果按升序排序(ORDER BY ASC)。通过指定降序(DESC),它们按相反的顺序排序,然后LIMIT 10取得前10个结果。

答案 3 :(得分:3)

ORDER BY id DESC LIMIT 10

在您的查询结束时。它将命令你的id降序,因此第一个结果将是最新的