我正在尝试按日期对我的讨论板中的帖子进行排序。这是我的代码:
$query = mysql_query("SELECT * FROM {$statement}
LIMIT {$startpoint} , {$limit}
ORDER BY datetime ASC");
这在语法上有什么问题吗?如果不是,还有什么可能是错的?基本上正在发生的事情是结果没有出现。我删除了订单,它可以工作(但当然它没有排序......)
我正在尝试按日期对我的讨论板中的帖子进行排序。这是我的代码:
$query = mysql_query("SELECT * FROM {$statement}
LIMIT {$startpoint} , {$limit}
ORDER BY datetime ASC");
这在语法上有什么问题吗?如果不是,还有什么可能是错的?基本上正在发生的事情是结果没有出现。我删除了订单,它可以工作(但当然它没有排序......)
Order by 应该在限制之前:
$query = mysql_query("SELECT * FROM {$statement}
ORDER BY datetime ASC LIMIT {$startpoint} , {$limit}");
试试这个:
$query = mysql_query("SELECT * FROM {$statement}
ORDER BY datetime ASC LIMIT {$startpoint} , {$limit} ");
可能有点晚了,但是 mySQL 提供了非常有用的 OFFSET 关键字……尤其是对于分页
mysql_query("SELECT * FROM {$statement} ORDER BY datetime ASC LIMIT {$limit} OFFSET {offset}
如果每页 10 条记录是您要查找的内容,并且您想在第 2 页上显示记录,即记录 11-20,您的查询将如下所示:
mysql_query("SELECT * FROM {$statement} ORDER BY datetime ASC LIMIT 10 OFFSET 10