mysql group by 語句使用總結


1,基本語法 其中顯示得是一條記錄

SELECT user_name,mobile_phone,`password` from users  GROUP BY is_status

 

 2,Group by 語句中得group_concat()函數

如果想看組內所有得用戶信息,就需要用到group_concat()函數 //合並組內信息

SELECT group_concat(user_name),group_concat(mobile_phone) from users GROUP BY is_status

 

 3,統計記錄總數 count()

SELECT count(*) totle, group_concat(user_name),group_concat(mobile_phone) from users GROUP BY is_status

 

 4,聚合   

  sum() 求和函數  max() 求最大值函數  min()求最小值函數   avg() 求平均值函數  。 

   

SELECT sum(integral) num, group_concat(user_name),group_concat(email),
group_concat(is_forten) from users GROUP BY is_status

 

 6,having子句:對分組結果進行二次篩選(where是第一次篩選)

SELECT sum(integral) num, group_concat(user_name),group_concat(email)  group_concat(is_forten) from users where is_forten=0     GROUP BY is_status HAVING num > 0

 

 

 6,with rollup 子句

可以實現在分組統計數據基礎上在進行相同得統計(sum,avg ,count ....)

也就是說,當我們進行分組操作以后,又想在看總得信息,或者還有其他類似操作,普通group by 語句是不能實現得,就需要用到 有  with rollup 子句得group by 語句

SELECT coalesce(is_status,'總數'),sum(integral) num, group_concat(user_name),group_concat(email),
group_concat(is_forten) from users GROUP BY is_status with rollup

 

 


免責聲明!

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



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