oracle中,求平均值用avg函數(shù)。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序設(shè)計(jì)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了豐縣免費(fèi)建站歡迎大家使用!
工具:oracle 10g
步驟:
1、數(shù)據(jù)庫(kù)中有test表數(shù)據(jù)如下:
2、求出這些人的平均grade,需要用以下語(yǔ)句:
select?avg(grade)?平均成績(jī)?from?test;
3、結(jié)果如下:
avg函數(shù)語(yǔ)法:
Avg(expr)
其中 expr 代表一個(gè)字符串表達(dá)式,它或者標(biāo)識(shí)一個(gè)字段,該字段包含要計(jì)算平均值的數(shù)據(jù);或者標(biāo)識(shí)一個(gè)表達(dá)式,它用該字段中的數(shù)據(jù)來(lái)執(zhí)行計(jì)算。 expr中的運(yùn)算對(duì)象可能包括一個(gè)表字段名,一個(gè)常數(shù)或一個(gè)函數(shù)(可能是內(nèi)在的,也可能是用戶自定義的,但不是 SQL 合計(jì)函數(shù))。
寫(xiě)個(gè)大概意思,畢竟我并不知道你的表結(jié)構(gòu)是什么樣的。
你的表格是什么樣的,特別是回見(jiàn)結(jié)構(gòu),如果是“年月日時(shí)分秒”結(jié)構(gòu)的,那么首先單獨(dú)截取"時(shí)"(不是截取年月日時(shí),而是單獨(dú)截取時(shí)),截取范圍是4,這樣出來(lái)的結(jié)果是每天0-4點(diǎn)的所有值。
然后開(kāi)始考慮分組,你說(shuō)的是每年每月的平均值,那么分組應(yīng)該是“年月”,然后再avg一下你要平均的值應(yīng)該就可以了。
三個(gè)月,每月的平均:
select 月份,avg(sum(charge)) from 費(fèi)用 where 時(shí)間 between 1月 and 3月 group by 月份
三個(gè)月的總平均:
select avg(sum(charge)) from 費(fèi)用 where 時(shí)間 between 1月 and 3月