MySQL中获取当前查询的总记录数,适用于分页等应用
通常在MySQL中获取记录总数都会使用SELECT COUNT(*) FROM tblName之类的语句
这类语句的缺点是:记录集还需要单独的查询来获取,相当于查询两次
我推荐使用如下方案:
SELECT SQL_CALC_FOUND_ROWS fldName1, fldName2 FROM tblName WHERE fldName3 = 1 LIMIT 10, OFFSET 20;
SELECT FOUND_ROWS();
虽然有两条SQL语句,但实际上只执行了一次数据库查询。