Running 4.0.15a. The second select's FOUND_ROWS() returns the wrong number of rows.
To test yourself: create database test1234; \r test1234 create table test (id int, primary key (id)); insert into test values (1), (2), (3), (4), (5); select SQL_CALC_FOUND_ROWS * from test where id > 3 limit 0, 1; select FOUND_ROWS(); select SQL_CALC_FOUND_ROWS * from test where id > 3 AND 1=2 limit 0, 1; select FOUND_ROWS(); select SQL_CALC_FOUND_ROWS * from test where id > 6 limit 0, 1; select FOUND_ROWS(); My results: mysql> create database test1234; Query OK, 1 row affected (0.01 sec) mysql> \r test1234 Connection id: 122 Current database: test1234 mysql> create table test (id int, primary key (id)); Query OK, 0 rows affected (0.01 sec) mysql> insert into test values (1), (2), (3), (4), (5); Query OK, 5 rows affected (0.01 sec) Records: 5 Duplicates: 0 Warnings: 0 mysql> select SQL_CALC_FOUND_ROWS * from test where id > 3 limit 0, 1; +----+ | id | +----+ | 4 | +----+ 1 row in set (0.00 sec) mysql> select FOUND_ROWS(); +--------------+ | FOUND_ROWS() | +--------------+ | 2 | +--------------+ 1 row in set (0.00 sec) mysql> select SQL_CALC_FOUND_ROWS * from test where id > 3 AND 1=2 limit 0, 1; Empty set (0.00 sec) mysql> select FOUND_ROWS(); +--------------+ | FOUND_ROWS() | +--------------+ | 2 | +--------------+ 1 row in set (0.00 sec) mysql> select SQL_CALC_FOUND_ROWS * from test where id > 6 limit 0, 1; Empty set (0.00 sec) mysql> select FOUND_ROWS(); +--------------+ | FOUND_ROWS() | +--------------+ | 0 | +--------------+ 1 row in set (0.00 sec) -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]