按评论中的日期排序

时间:2010-01-06 02:17:56

标签: php mysql sorting

在很多评论中,通常都有一个按日期,有用性等排序的功能......基本上这些工作是通过查询新的MySQL行吗?

例如:

$sql = "SELECT * FROM TABLE ORDER BY TimeAdded"
$sql = "SELECT * FROM TABLE ORDER BY Helpfulness"

或者有更好的方法吗?

其次,制作评论页面。是否像在MySQL查询中使用循环和限制一样简单,每页显示10个结果?

修改 对于一个庞大的评论网站,让MySQL处理所有排序是理想的吗?

2 个答案:

答案 0 :(得分:1)

您可以让数据库管理订购(推荐),也可以加载所有结果,然后使用PHP代码对它们进行排序。或者,您可以将它们全部放入HTML中并使用JavaScript对它们进行排序。

对于分页,您可以使用LIMITOFFSET子句(或LIMIT 10,10)来浏览结果集(当然,如果结果集发生更改,您的分页也可能会更改)

SELECT * FROM posts ORDER BY helpfulness LIMIT 10,10

OR

SELECT * FROM posts ORDER BY helpfulness LIMIT 10 OFFSET 10

对于组合分页和排序,我绝对建议将其留待数据库处理。

答案 1 :(得分:1)

你在两方面都做对了,道格。

对于一个庞大的评论网站,你仍然希望MySQL对结果进行排序,你只想利用服务器端优化(一个好的my.cnf,服务器端缓存等)和代码缓存。这是一个完整的'蜡球',但基本的基本相同。