前一段时间看到07年老外写的一篇文章“To SQL_CALC_FOUND_ROWS or not to SQL_CALC_FOUND_ROWS?”,里面介绍了SQL_CALC_FOUND_ROWS和COUNT性能的对比,SQL_CALC_FOUND_ROWS性能堪忧。
我在本地使用MySQL5.7进行了上面的测试,发现使用SQL_CALC_FOUND_ROWS与使用 LIMIT+COUNT()两条SQL执行时间近似。
相对而言SQL_CALC_FOUND_ROWS确实节省一次网络开销。
当然,具体问题具体分析,这两个函数在不同的场景不一定总是近似的。