我的代码从表中获取最后10个值。此表格具有结构id
,text
,目前它有20行。我用这段代码
<?php
$query = mysql_query("SELECT * FROM `table` ORDER BY `id` DESC LIMIT 10");
// Fetching data stuff here
?>
并返回ID 11-20的数据。 (20的最后10个)
我希望通过AJAX从这个1-10中获取前10个值。我想也许这会起作用
$previous_id= $_GET["last"]; // This time it will be 11
mysql_query("SELECT * FROM `table` ORDER BY `id` DESC LIMIT $previous_id, -10");
但我没有,有什么建议吗?
由于
PS:这不是gimme teh codez
问题,我只是想知道如何使该查询有效。
答案 0 :(得分:1)
只需使用正数代替-10
:
"SELECT * FROM `table` ORDER BY `id` DESC LIMIT $previous_id, 10"
我们假设$previous_id
是5
,查询将是:
"SELECT * FROM `table` ORDER BY `id` DESC LIMIT 5, 10"
返回的行将从5
和10
条记录开始。
答案 1 :(得分:1)
如果我理解正确,你想在行id = $previous_id
之前得到10行,按降序ID排序。
如果是这种情况,您最好的选择是使用WHERE
条件。正如您在id DESC
订购时,您需要前10行id > $previous_id
:
SELECT * FROM `table` WHERE `id` > $previous_id ORDER BY `id` DESC LIMIT 10
这些将是原始查询中$previous_id
之前的10行。