gpt4 book ai didi

perl - 如何查询 sqlite 的某些行,即将其分成页面(perl DBI)

转载 作者:IT王子 更新时间:2023-10-29 06:27:38 26 4
gpt4 key购买 nike

抱歉我的菜鸟问题,我目前正在编写一个带有 sqlite 数据库的 perl web 应用程序。我希望能够在我的应用程序查询结果中显示可能有数千行的内容——这些应该分成几页——路由应该像/webapp/N——其中 N 是页码。为了只获取相关行,使用 DBI 查询 sqlite 数据库的正确方法是什么。

例如,如果我每页显示 25 行,那么我想在数据库中查询第一页中的 1-25 行,第二页中的 26-50 行等....

最佳答案

使用LIMIT/OFFSET构造会显示页面,但是OFFSET会导致查询效率低下,并使页面内容移动时数据发生变化。

如果下一页从上一页结束的位置开始查询,则效率更高,更一致,如下所示:

SELECT *
FROM mytable
ORDER BY mycolumn
WHERE mycolumn > :lastvalue
LIMIT 25

这意味着您的链接不是 /webapp?Page=N 而是 /webapp?StartAfter=LastKey

这在 Scrolling Cursor page 上有详细解释。 .

关于perl - 如何查询 sqlite 的某些行,即将其分成页面(perl DBI),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13016100/

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