gpt4 book ai didi

MySql - 什么会导致 FOUND_ROWS() 返回不正确的值?

转载 作者:行者123 更新时间:2023-11-29 04:02:23 25 4
gpt4 key购买 nike

我有一个类似于下面示例的查询(本文仅更改了列名),它使用 LIMIT 从 MySql 数据库返回分页记录选择,加上如果没有限制则返回的记录数通过 FOUND_ROWS() 应用。

在下面的示例中,SELECT FOUND_ROWS() 仅返回 10,但我知道如果删除限制,查询将返回更多行。正如我对许多其他几个非常相似的查询所期望的那样,我也有这个工作。

什么会导致 MySql 返回意外的值来解释我在这里看到的内容?

SELECT 
id,
firstname,
surname,
'' as anothercolumn1,
date as anothercolumn2,
'literal' as db

FROM some_table

WHERE
filter_col LIKE @val1
and surname LIKE @val2
ORDER BY surname, firstname
LIMIT 0, 10;

SELECT FOUND_ROWS();

最佳答案

尝试使用 SQL_CALC_FOUND_ROWS在您的查询中:

SELECT 
SQL_CALC_FOUND_ROWS
id,
firstname,
....

关于MySql - 什么会导致 FOUND_ROWS() 返回不正确的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10587232/

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