MySQL GROUP BY 語(yǔ)句
GROUP BY 語(yǔ)句根據(jù)一個(gè)或多個(gè)列對(duì)結(jié)果集進(jìn)行分組考余。
在分組的列上我們可以使用 COUNT, SUM, AVG,等函數(shù)沿盅。
實(shí)例演示
將數(shù)據(jù)表按名字進(jìn)行分組垮刹,并統(tǒng)計(jì)每個(gè)人有多少條記錄:
使用 WITH ROLLUP
WITH ROLLUP 可以實(shí)現(xiàn)在分組統(tǒng)計(jì)數(shù)據(jù)基礎(chǔ)上再進(jìn)行相同的統(tǒng)計(jì)(SUM,AVG,COUNT…)脊另。
其中記錄 NULL 表示所有人的登錄次數(shù)宁赤。
我們可以使用 coalesce 來(lái)設(shè)置一個(gè)可以取代 NUll 的名稱筹燕,coalesce 語(yǔ)法:select coalesce(a,b,c);
參數(shù)說(shuō)明:如果a==null,則選擇b扰法;如果b==null,則選擇c蛹含;如果a!=null,則選擇a;如果a b c 都為null 塞颁,則返回為null(沒(méi)意義)浦箱。
以下實(shí)例中如果名字為空我們使用總數(shù)代替: