1. 程式人生 > >一次性完成分頁查詢並且附帶數據總條數

一次性完成分頁查詢並且附帶數據總條數

分頁查詢 select rom 次數 告訴 IT 效率 span sele

通常mysql獲取查詢記錄總數我們使用如下語句:
SELECT COUNT(*) FROM users WHERE k=‘avs‘;
SELECT id FROM goods WHERE k=‘avs‘ LIMIT 10;

但是記錄總數總是需要單獨的語句來查詢,例如在分頁查詢程序中就有這樣的問題,其實mysql可以在一次查詢中獲取記錄和總數的,這就是要使用SQL_CALC_FOUND_ROWS參數,使用方法如下:
SELECT SQL_CALC_FOUND_ROWS goods WHERE k=‘avs‘ LIMIT 10;
SELECT FOUND_ROWS();

這雖然是兩個sql語句,但是確是查詢一次數據庫,效率明顯提高了一半!其中SQL_CALC_FOUND_ROWS 告訴Mysql將sql所處理的行數記錄下來,FOUND_ROWS() 則取到了這個紀錄。

一次性完成分頁查詢並且附帶數據總條數