mysql性能测试(SQL_CALC_FOUND_ROWS)

环境:

mysql

引擎:innodb

 表结构:

mh_uid_user    两个字段,username为索引

mh_user       八个字段,username为索引

500W条数据时,insert一条数据的执行时间是20ms+

根据主键或索引select一条数据差不多是1-10ms

全局select一条数据估计是3s!!!

 

mysql性能测试(SQL_CALC_FOUND_ROWS)

第一条根据索引查,表结构简单,两个字段

第二三四条根据索引查,表结构稍微复杂,8个字段,

 

 

 

 

 

 

几百万数据的select基本在100ms以下,所以问题不大,如果是用like模糊查询,就在2s左右,其中如果需要分页,可以用SQL_CALC_FOUND_ROWS函数

为了获取总记录数200W数据,下面是SQL_CALC_FOUND_ROWS函数和count(*)方法对比。

mysql性能测试(SQL_CALC_FOUND_ROWS)

count(*)差不多2.4s

SQL_CALC_FOUND_ROWS差不多2s,

其中SQL_CALC_FOUND_ROWS方法的返回值是结果集,而记录数用 SELECT FOUND_ROWS()返回(这个基本不花时间)

 转:https://www.cnblogs.com/alazalazalaz/p/4027516.html

上一篇:MySQL-5.7-Multi-Range Read Optimization


下一篇:C# 中判断DBNull?