我正在尝试加速一些SQL查询.我对分页的SQL查询是这样的(第3页):
SELECT
SQL_CALC_FOUND_ROWS book_id, book_title
FROM
books
LIMIT 40, 60
Run Code Online (Sandbox Code Playgroud)
然后得到所有结果计数:
SELECT FOUND_ROWS();
Run Code Online (Sandbox Code Playgroud)
但如果结果数量巨大(数百万本书)那么FOUND_ROWS()可能需要很长时间.
事实是,没有必要计算数百万行(书籍),答案"10000+"对于普通用户来说已经足够了.
有可能是这样的吗?伪代码:
SELECT FOUND_ROWS(LIMIT 10000)
Run Code Online (Sandbox Code Playgroud)
小智 0
我不确定是否可能。但我建议尝试以下方法:
SELECT count(*) into number_of_rows from books.
Run Code Online (Sandbox Code Playgroud)
然后用于number_of_rows分页。
| 归档时间: |
|
| 查看次数: |
364 次 |
| 最近记录: |