以下の例に似たクエリがあります (この投稿では列名のみが変更されています)。これは、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();