mysql獲取group by的總記錄行數方法


mysql獲取group by內部可以獲取到某字段的記錄分組統計總數,而無法統計出分組的記錄數。


mysql的SQL_CALC_FOUND_ROWS 使用 獲取查詢的行數 在很多分頁的程序中都這樣寫:

代碼如下 復制代碼

SELECT COUNT(*) from `table` WHERE ......;

查出符合條件的記錄總數

 

代碼如下 復制代碼
SELECT * FROM `table` WHERE ...... limit M,N;


查詢當頁要顯示的數據 這樣的語句可以改成:

代碼如下 復制代碼
SELECT SQL_CALC_FOUND_ROWS * FROM `table` WHERE ...... limit M, N;

SELECT FOUND_ROWS();

因(www.111cn.net)此可以配合mysql自帶的SQL_CALC_FOUND_ROWS和FOUND_ROWS()函數可以實現。

代碼如下 復制代碼
SELECT SQL_CALC_FOUND_ROWS t3.id, a,bunch,of,other,stuff FROM t1, t2, t3 WHERE(associate t1,t2,and t3 with each other) GROUPBY t3.id LIMIT 10,20SELECT FOUND_ROWS() as count;


使用以上兩個語句即可完成滿足group by的總記錄行數。

另附:

group by 的簡單使用方法:

代碼如下 復制代碼
'SELECT column_id,count(*) as count FROM my_table group by column_id';

from:http://www.111cn.net/database/mysql/50323.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM