将结果限制在最后10个


Limit results to last 10

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

我希望在输出结果时忽略最后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列排序的升序显示。

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

正在获取最后10条记录,但结果集仍按升序排列。

降序:

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

说明:默认情况下,ORDER by中的结果按升序排序(ORDER by ASC(。通过指定降序(DESC(,它们以相反的顺序排序,LIMIT 10将获得前10个结果。

ORDER BY id DESC LIMIT 10

在查询的末尾。它会按照你的ID降序排列,因此第一个结果将是最新的