2012-02-15 71 views
0

假设您拥有数百万件物品(比如说搜索结果),并且您有不同的参数用于对这些物品进行分类(例如在电子商务网站中)。我们将使用分页显示项目。为不同参数排序项目的有效方法?

让我们说它可以按日期,受欢迎程度和相关性排序,结果分页。你将如何实现这个功能?通常我会为参数创建不同的比较函数并相应地得到结果。

如果还有其他有效的方法来获得这种功能,而不是每次都对搜索结果进行排序吗?另外,我们是否每次都使用相关的命令参数运行sql查询,还是应该对前一个查询的搜索结果进行排序,以免我们重新搜索时间?

+0

你是什么意思,“一次又一次诉诸结果”?你的意思是实际得到结果,然后对它们进行排序?为什么不只是构造数据库查询来按每个参数排序呢? – Colleen 2012-02-15 19:10:41

回答

1

“如果还有其他有效的方法来获得这种功能,而不是每次都对搜索结果进行排序吗?”

我会说你不需要排序每次,但有适当OrderBy参数执行SQL查询,分页,并显示给用户

“另外,做我们一般使用的相关命令的参数运行SQL查询每次或我们应该对先前查询的搜索结果进行排序,以免我们重新搜索时间?“

当然,您需要生成一个新的SQL查询,因为基于新订单参数的第一页数据可以包含完全不同于前一个数据的一组数据。

相关问题