0

从 db 中检索数据时,我想按列对它们进行排序,并对它们进行 DESC 或 ASC 排序。我的 SQL 查询做我想做的事。但我想知道这样做的最快方法是什么?

问题是我认为用户在更改顺序或排序选项时不应该更新整个页面。这就是为什么我认为最好用 AJ 对它们进行排序。所以一切都是瞬间的。你怎么看?AJ 还是在从数据库中检索时直接排序和排序?

谢谢

4

1 回答 1

1

这取决于。

为了在第一页加载时获取数据并尽可能快地对其进行排序,最好让数据库这样做,以便它可以使用索引。这当然假设您已经在适当的列上创建了索引。此外,如果您只显示第一n行,那么最好让数据库进行排序并仅将第一n行返回给客户端,而不是为客户端提供整个数据库的副本。

另一方面,如果您已经将所有行提取到客户端并且只想应用不同的排序,那么在客户端上进行排序可能会更快,以避免额外的数据库命中。

于 2012-12-25T22:59:44.253 回答