附:MySQL 生成千萬測試數據
使用navicat工具,執行分頁查詢效率對比:(時間不是特別精確,但是可以用於參考)
1.使用limit:
SELECT id,val FROM t_test LIMIT 0,50
-- 耗時:0.026s
SELECT id,val FROM t_test LIMIT 5000,5050
-- 耗時:0.046s
SELECT id,val FROM t_test LIMIT 50000,50050
-- 耗時:0.074s
SELECT id,val FROM t_test LIMIT 500000,500050
-- 耗時:0.514s
SELECT id,val FROM t_test LIMIT 5000000,5000050
-- 耗時:4.810s
SELECT id,val FROM t_test LIMIT 9000000,9000050
-- 耗時:3.371s
2.不使用limit
SELECT id,val FROM t_test where id>=0 and id<=50
-- 耗時:0.024s
SELECT id,val FROM t_test where id>=5000 and id<=5050
-- 耗時:0.024s
SELECT id,val FROM t_test where id>=50000 and id<=50050
-- 耗時:0.024s
SELECT id,val FROM t_test where id>=500000 and id<=500050
-- 耗時:0.025s
SELECT id,val FROM t_test where id>=5000000 and id<=5000050
-- 耗時:0.025s
SELECT id,val FROM t_test where id>=9000000 and id<=9000090
-- 耗時:0.025s