gpt4 book ai didi

postgresql - 如何删除或更改 postgresql 上的 cakephp 分页计数查询?

转载 作者:行者123 更新时间:2023-11-29 11:46:09 24 4
gpt4 key购买 nike

我正在使用带有 postgresql 的 cakephp。我的一些表非常大。当使用 cakephp 的分页时,它在大表上运行 COUNT() 然后查询实际结果。计数查询耗时 2.5 分钟,而返回数据的实际查询耗时 95 毫秒。

是否有可能消除对计数的需求,或者用可能更快的东西代替它?我不需要返回确切的行数,就像 Google 搜索返回结果 1-10 大约 765,000 的方式一样。

编辑:或者,有没有办法完全禁用计数?知道有多少页是不需要的,往往会有那么多结果。我所需要的只是一个“下一步”按钮,它可以增加 SQL 偏移量,就像 cakephp 分页已经具有的那样,如果下一页没有返回任何行,那就没问题。

最佳答案

我找到了在 cakephp 中绕过分页计数查询的方法。在您想要分页的模型中,您可以覆盖运行计数查询的函数,该函数是 paginateCount($conditions = null, $recursive = 0, $extra = array())

我使用以下代码解决了我的问题:

function paginateCount($conditions = null, $recursive = 0, $extra = array()) {
return 0;
}

然后我在 View 中编辑分页以始终显示下一个按钮。转到没有结果的页面将不会显示任何内容。

关于postgresql - 如何删除或更改 postgresql 上的 cakephp 分页计数查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6574466/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com