價值百萬的it技術(shù)知識sql高級oracle分析函數(shù)_第1頁
價值百萬的it技術(shù)知識sql高級oracle分析函數(shù)_第2頁
價值百萬的it技術(shù)知識sql高級oracle分析函數(shù)_第3頁
價值百萬的it技術(shù)知識sql高級oracle分析函數(shù)_第4頁
價值百萬的it技術(shù)知識sql高級oracle分析函數(shù)_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Oracle 分析函數(shù)Oracle 分析函數(shù)函數(shù)列表SUM:該函數(shù)計算組中表達(dá)式的累積和MIN:在一個組中的數(shù)據(jù)窗口中查找表達(dá)式的最小值MAX:在一個組中的數(shù)據(jù)窗口中查找表達(dá)式的最大值A(chǔ)VG:用于計算一個組和數(shù)據(jù)窗口內(nèi)表達(dá)式的平均值。COUNT:對一組內(nèi)發(fā)生的事情進(jìn)行累積計數(shù)R:根據(jù) ORDER BY 子句中表達(dá)式的值,從查詢返回的每一行,計算它們與其它行的相對位置DENSE_R:根據(jù) ORDER BY 子句中表達(dá)式的值,從查詢返回的每一行,計算它們與其它行的相對位置:從 DENSE_R返回的集合中取出排在最前面的一個值的行LAST:從 DENSE_R返回的集合中取出排在最后面的一個值的行_V

2、ALUE:返回組中數(shù)據(jù)窗口的第一個值LAST_VALUE:返回組中數(shù)據(jù)窗口的最后一個值。LAG:可以結(jié)果集中的其它行而不用進(jìn)行自連接LEAD:LEAD 與 LAG 相反,LEAD 可以組中當(dāng)前行之后的行ROW_NUMBER:返回有序組中一行的偏移量,從而可用于按特定標(biāo)準(zhǔn)排序的行號STDDEV:計算當(dāng)前行關(guān)于組的標(biāo)準(zhǔn)偏離STDDEV_POP:該函數(shù)計算總體標(biāo)準(zhǔn)偏離,并返回總體變量的平方根 STDDEV_S:該函數(shù)計算累積樣本標(biāo)準(zhǔn)偏離,并返回總體變量的平方根 VAR_POP:該函數(shù)返回非空集合的總體變量(忽略 null) VAR_S:該函數(shù)返回非空集合的樣本變量(忽略 null)VARIANCE:

3、如果表達(dá)式中行數(shù)為1,則返回0,如果表達(dá)式中行數(shù)大于1,則返回VAR_SCOVAR_POP:返回一對表達(dá)式的總體協(xié)方差COVAR_S:返回一對表達(dá)式的樣本協(xié)方差CORR:返回一對表達(dá)式的相關(guān)系數(shù)CUME_DIST:計算一行在組中的相對位置NTILE:將一個組分為表達(dá)式的散列表示 PERCENT_R:和 CUME_DIST(累積分配)函數(shù)類似 PERCENTILE_DISC:返回一個與輸入的分布百分比值相對應(yīng)的數(shù)據(jù)值 PERCENTILE_CONT:返回一個與輸入的分布百分比值相對應(yīng)的數(shù)據(jù)值RATIO_TO_REPORT:該函數(shù)計算 expres/(sum(expres)的值,它給出相對于總數(shù)的

4、百分比REGR_ (Linear Regres) Functions:這些線性回歸函數(shù)適合最小二乘法回歸線,有 9 個不同的回歸函數(shù)可使用CUBE:按照OLAP 的CUBE 方式進(jìn)行數(shù)據(jù)統(tǒng)計,即各個維度均需統(tǒng)計ROLLUP:SELECTdepartment_id,manager_id,employee_id,_name| |last_name employee_name,hire_date,salary,job_idFROM employeesORDERBYdepartment_id,hire_dateOracle 分析函數(shù)實(shí)際上操作對象是查詢出的數(shù)據(jù)集,也就是說不需二次查詢 javascri

5、pt.:;數(shù)據(jù)庫,實(shí)際上就是 oracle 實(shí)現(xiàn)了一些自身需要編碼實(shí)現(xiàn)的統(tǒng)計功能,對于簡化開發(fā)工作量有很大的幫助,特別在開發(fā)第javascript.:;報表 javascript.:;時是非常有幫助的。Oracle 從 8.1.6 開始提供分析函數(shù)。oracle 分析函數(shù)的語法:function_name(arg1,arg2,.)over()說明:1.partition-clause數(shù)據(jù)集分組2.order-by-clause數(shù)據(jù)集排序3.windowing clause功能非常強(qiáng)大、比較復(fù)雜,定義分析函數(shù)在操作行的集range、row、specifying。合。有三種開窗方式:-Partit

6、ion by,按相應(yīng)的值(manager_id)進(jìn)行分組統(tǒng)計SELECTmanager_id,_name| |last_name employee_name,hire_date,salary,AVG(salary) OVER (PARTITION BY manager_id) avg_salaryFROM employees;-等同于上面SELECTa.manager_id,a.employee_name,a.hire_date,a.salary,b.avg_salaryFROM(SELECTmanager_id,_name|last_name employee_name,hire_date,

7、salaryFROM employees) a,(SELECTmanager_id,AVG(salary) avg_salaryFROM employeesGROUP BY manager_id) bWHERE a.manager_id=b.manager_idORDER BY a.manager_id-Order by 按相應(yīng)的值(hire_date)進(jìn)行排序并累計統(tǒng)計SELECTmanager_id,_name| |last_name employee_name,hire_date,salary,AVG(salary) OVER (ORDER BY hire_date)FROM emplo

8、yees;-Partition by Order by 首先按相應(yīng)的值(manager_id,hire_date)排序,并按order by 的值(hire_date)進(jìn)行累計統(tǒng)計SELECTmanager_id,_name| |last_name employee_name,hire_date,salary,AVG(salary) OVER (PARTITION BY manager_id ORDER BY hire_date)FROM employees;-Partition by Order by 首先按相應(yīng)的值(manager_id,hire_date)排序,并按order by 的值

9、(hire_date)進(jìn)行累計統(tǒng)計-該平均值由當(dāng)前員工和與之具有相同經(jīng)理的前一個和后兩個三者的平均數(shù)得來SELECTmanager_id,_name| |last_name employee_name,hire_date,salary,AVG(salary) OVER (PARTITION BY manager_id ORDER BY hire_date ROWSBETN 1 PRECEDING AND 2 FOLLOWING)FROM employees;-Partition by Order by 首先按相應(yīng)的值(manager_id,hire_date)排序,并按order by 的值(

10、hire_date)進(jìn)行累計統(tǒng)計-該平均值由當(dāng)前員工和與之具有相同經(jīng)理,并且雇用時間在該員工時間之前的50 天以內(nèi)和在該員工之后的 150 天之內(nèi)員工的薪水的平均值-range 為取值范圍,估計只有數(shù)字和日期能夠進(jìn)行取值了SELECTmanager_id,_name| |last_name employee_name,hire_date,salary,AVG(salary) OVER (PARTITION BY manager_idORDERBYhire_dateRANGEBETN 50 PRECEDINGAND150FOLLOWING)FROMemployees;-Partition by

11、Orderby 首先按相應(yīng)的值(manager_id,hire_date)排序,并按order by 的值(hire_date)進(jìn)行累計統(tǒng)計-該平均值由當(dāng)前員工和與之具有相同經(jīng)理的平均值-每行對應(yīng)的數(shù)據(jù)窗口是從第一行到最后一行SELECTmanager_id,_name| |last_name employee_name,hire_date,salary,AVG(salary) OVER (PARTITIONavg_salary_part_order,BYmanager_idORDER BY hire_date)AVG(salary) OVER (PARTITIONBYmanager_id)

12、avg_salary_order,AVG(salary) OVER (PARTITIONBYmanager_idORDER BY hire_date RANGEBETN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) avg_salary_unbound1,-等同于僅 partition 時候的值A(chǔ)VG(salary) OVER (PARTITION BY manager_id ORDER BY hire_date ROWSBETN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)avg_salary_unbou

13、nd2-等同于上面FROM employees;Oracle 分析函數(shù)SUM,AVG,MAX,COUNTSUM功能描述:該函數(shù)計算組中表達(dá)式的累積和。SLE:下例計算同一經(jīng)理下員工的薪水累積值MIN功能描述:在一個組中的數(shù)據(jù)窗口中查找表達(dá)式的最小值。SLE:下面例子中 dept_min 返回當(dāng)前行所在部門的最小薪水值MAX功能描述:在一個組中的數(shù)據(jù)窗口中查找表達(dá)式的最大值。SLE:下面例子中 dept_max 返回當(dāng)前行所在部門的最大薪水值A(chǔ)VG功能描述:用于計算一個組和數(shù)據(jù)窗口內(nèi)表達(dá)式的平均值。SLE:下面的例子中列 c_mavg 計算員工表中每個員工的平均薪水SELECTdepartmen

14、t_id,_name| |last_name employee_name,hire_date,salary,MIN(salary) OVER (PARTITION BY department_id order by hire_date)dept_min,ASMAX(salary)dept_max,OVER(PARTITIONBYdepartment_idorderbyhire_date)ASAVG(salary)dept_avg,OVER(PARTITIONBYdepartment_idorderbyhire_date)ASSUM(salary)dept_sum/*,OVER(PARTITIO

15、NBYdepartment_idorderbyhire_date)ASCOUNT(*)OVER (ORDER BY salary) AS count_by_salary,COUNT(*)FOLLOWING)OVER (ORDER BY salary RANGEAS count_by_salary_range*/BETN50PRECEDINGAND150FROMemployeesCOUNT功能描述:對一組內(nèi)發(fā)生的事情進(jìn)行累積計數(shù),如果指定*或一些非空常數(shù),count將對所有行計數(shù),如果指定一個表達(dá)式,count 返回表達(dá)式非空賦值的計數(shù),當(dāng)有相同值出現(xiàn)時,這些相等的值都會被納入被計算的值;可以使

16、用 DISTINCT 來去掉一組中完全相同的數(shù)據(jù)后出現(xiàn)的行數(shù)。SLE:下面例子中計算每個員工在按薪水排序中當(dāng)前行附近薪水在n-50,n+150之間的行數(shù),n 表示當(dāng)前行的薪水例如,Phil的薪水 2200,排在他之前的行中薪水大于等于 2200-50 的有1 行,排在他之后的行中薪水小于等于 2200150 的行沒有,所以 count 計數(shù)值cnt3 為 2(包括自己當(dāng)前行);cnt2 值相當(dāng)于小于等于當(dāng)前行的 SALARY 值的所有行數(shù)SELECTdepartment_id,_name|last_name employee_name,salary,COUNT(*)OVER(ORDER BY

17、salary) AS count_by_salary,COUNT(*)FOLLOWING)OVER(ORDER BY salary RANGE BETN 50 PRECEDING AND 150AS count_by_salary_rangeFROM employeesWHERE department_id in (10,20,30);Oracle 分析函數(shù)函數(shù) R,DENSE_R,LASTR功能描述:根據(jù) ORDER BY 子句中表達(dá)式的值,從查詢返回的每一行,計算它們與其它行的相對位置。組內(nèi)的數(shù)據(jù)按 ORDER BY 子句排序,然后給每一行賦一個號,從而形成一個序列,該序列從 1 開始,往

18、后累加。每次 ORDER BY 表達(dá)式的值發(fā)生變化時,該序列也隨之增加。有同樣值的行得到同樣的數(shù)字序號(認(rèn)為 null 時相等的)。然而,如果兩行的確得到同樣的排序,則序數(shù)將隨后跳躍。若兩行序數(shù)為 1,則沒有序數(shù) 2,序列將給組中的下一行分配值 3,DENSE_R則沒有任何跳躍。SLE:下例中計算每個員工按部門分區(qū)再按薪水排序,依次出現(xiàn)的序列號(注意與 DENSE_R函數(shù)的區(qū)別)DENSE_R功能描述:根據(jù) ORDER BY 子句中表達(dá)式的值,從查詢返回的每一行,計算它們與其它行的相對位置。組內(nèi)的數(shù)據(jù)按 ORDER BY 子句排序,然后給每一行賦一個號,從而形成一個序列,該序列從 1 開始,往

19、后累加。每次 ORDER BY 表達(dá)式的值發(fā)生變化時,該序列也隨之增加。有同樣值的行得到同樣的數(shù)字序號(認(rèn)為null 時相等的)。密集的序列返回的時沒有間隔的數(shù)SLE:下例中計算每個員工按部門分區(qū)再按薪水排序,依次出現(xiàn)的序列號(注意與 R函數(shù)的區(qū)別)SELECTdepartment_id,_name| |last_name employee_name,salary,R() OVER (ORDER BY salary) AS R_ORDER,DENSE_R() OVER (ORDER BY salary) AS DENSE_R_ORDERFROM employeesSELECTdepartmen

20、t_id,_name| |last_name employee_name,salary,R() OVER (PARTITION BY department_id ORDERR_PART_ORDER,BY salary) ASDENSE_R() OVER (PARTITION BY department_idORDERBYsalary)ASDENSE_R_PART_ORDERFROM employeesOracle 分析函數(shù)統(tǒng)計分析函數(shù)方差和標(biāo)準(zhǔn)差:樣本中各數(shù)據(jù)與樣本平均數(shù)的差的平方和的平均數(shù)叫做樣本方差;樣本方差的算術(shù)平方根叫做樣本標(biāo)準(zhǔn)差。樣本方差和樣本標(biāo)準(zhǔn)差都是衡量一個樣本波動大小的量,樣本

21、方差或樣本標(biāo)準(zhǔn)差越大,樣本數(shù)據(jù)的波動就越大。數(shù)學(xué)上一般用 EX-E(X)2來度量隨程度,稱為 X 的方差。量X 與其均值 E(X)即期望的偏離方差是標(biāo)準(zhǔn)差的平方方差和標(biāo)準(zhǔn)差。方差和標(biāo)準(zhǔn)差是測算離散趨勢最重要、最常用的指標(biāo)。方差是各變量值與其均值離差平方的平均數(shù),它是測算數(shù)值型數(shù)據(jù)離散程度的最重要的方法。標(biāo)準(zhǔn)差為方差的平方根,用 S 表示。StdDev 返回 expr 的樣本標(biāo)準(zhǔn)偏差。它可用作和分析函數(shù)。它與stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。Oracle 數(shù)據(jù)庫中,標(biāo)準(zhǔn)偏差計算結(jié)果與 variance 用作集聚

22、函數(shù)計算結(jié)果的平方根相等。該函數(shù)參數(shù)可取任何數(shù)字類型或是任何能隱式轉(zhuǎn)換成數(shù)字類型的非數(shù)字類型。STDDEV功能描述:計算當(dāng)前行關(guān)于組的標(biāo)準(zhǔn)偏離。(Standard Deviation)SLE:STDDEV_S功能描述:該函數(shù)計算累積樣本標(biāo)準(zhǔn)偏離,并返回總體變量的平方根,其返回值與 VAR_POP 函數(shù)的平方根相同。(Standard DeviationSle)SLE:它與 stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。SELECTdepartment_id,_name| |last_name employee_name,

23、hire_date,salary,STDDEV_S(salary) OVER (PARTITION BY department_idhire_date) AS cum_sdevORDERBYFROM employeesWHERE department_id in (20,30,60);STDDEV 和 STDDEV_S的區(qū)別SELECT_name| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (ORDER BY hire_date) StdDev,STDDEV_S(salary) OVER (ORDER BY hi

24、re_date) AS cum_sdevFROM employeesVAR_POP功能描述:(Variance Population)該函數(shù)返回非空集合的總體變量(忽略 null),VAR_POP 進(jìn)行如下計算:(SUM(expr2) - SUM(expr)2 / COUNT(expr) / COUNT(expr)VAR_S功能描述:(VarianVAR_POP 進(jìn)行如下計算:le)該函數(shù)返回非空集合的樣本變量(忽略 null),(SUM(expr*expr)-SUM(expr)*SUM(expr)/COUNT(expr)/(COUNT(expr)-1)SLE:VARIANCE功能描述:該函數(shù)

25、返回表達(dá)式的變量,Oracle 計算該變量如下:如果表達(dá)式中行數(shù)為 1,則返回 0如果表達(dá)式中行數(shù)大于 1,則返回 VAR_SSLE:SELECTdepartment_id,_name| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (PARTITION BY department_id ORDER BY hire_date) ASSTDDEV,STDDEV_S(salary) OVER (PARTITION BY department_id ORDER BYhire_date) AS STDDEV_S,VAR_PO

26、P(salary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VAR_POP,VAR_SAS VAR_S(salary) OVER (PARTITION BY department_id ORDER BY hire_date),VARIANalary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VARIANCEFROM employees協(xié)方差分析是建立在方差分析和回歸分析基礎(chǔ)之上的一種統(tǒng)計分析方法。方差分析是從質(zhì)量因子的角度探討般說來,質(zhì)量因子是可以人為控制

27、的。不同水平對實(shí)驗指標(biāo)影響的差異。一回歸分析是從數(shù)量因子的角度出發(fā),通過建立回歸方程來研究實(shí)驗指標(biāo)與一個(或幾個)因子之間的數(shù)量關(guān)系。但大多數(shù)情況下,數(shù)量因子是不可以人為加以控制的。兩個不同參數(shù)之間的方差就是協(xié)方差若兩個隨量 X 和 Y 相互獨(dú)立,則 E(X-E(X)(Y-E(Y)=0,因而若上述數(shù)學(xué)期望不為零,則 X 和 Y 必不是相互獨(dú)立的,亦即它們之間存在著一定的關(guān)系。定義E(X-E(X)(Y-E(Y)稱為隨量 X 和 Y 的協(xié)方差,記作 COV(X,Y),即COV(X,Y)=E(X-E(X)(Y-E(Y)。COVAR_POP功能描述:返回一對表達(dá)式的總體協(xié)方差。SLE:COVAR_S功

28、能描述:返回一對表達(dá)式的樣本協(xié)方差SLE:SELECTa.department_id,a.employee_id,b.employee_id manager_id,a._name| |a.last_nameemployee_name,b._name| |b.last_namemanager_name,a.hire_date,a.salary employee_salary,b.salary manager_salary,COVAR_POP(a.salary,b.salary) OVER (ORDER BYa.department_id,a.hire_date ) AS CUM_COVP,COV

29、AR_S(a.salary,b.salary) OVER (ORDER BYa.department_id,a.hire_date ) AS CUM_SFROM employees a,employees bWHERE a.manager_id=b.employee_id(+)CORR功能描述:返回一對表達(dá)式的相關(guān)系數(shù),它是如下的縮寫:COVAR_POP(expr1,expr2)/STDDEV_POP(expr1)*STDDEV_POP(expr2)從統(tǒng)計上講,相關(guān)性是變量之間關(guān)聯(lián)的強(qiáng)度,變量之間的關(guān)聯(lián)意味著在某種程度上一個變量的值可由其它的值進(jìn)行。通過返回一個-11 之間的一個數(shù),相關(guān)系數(shù)給

30、出了關(guān)聯(lián)的強(qiáng)度,0 表示不相關(guān)。SELECTa.department_id,a._name| |a.last_name employee_name,b._name| |b.last_name manager_name,a.hire_date,a.salary employee_salary,b.salary manager_salary,CORR(a.salary,b.salary) OVER (ORDER BY a.department_id,a.hire_dateAS CORR)FROM employees a,employees bWHERE a.manager_id=b.employe

31、e_id(+)Oracle 分析函數(shù)統(tǒng)計分析函數(shù)方差和標(biāo)準(zhǔn)差:樣本中各數(shù)據(jù)與樣本平均數(shù)的差的平方和的平均數(shù)叫做樣本方差;樣本方差的算術(shù)平方根叫做樣本標(biāo)準(zhǔn)差。樣本方差和樣本標(biāo)準(zhǔn)差都是衡量一個樣本波動大小的量,樣本方差或樣本標(biāo)準(zhǔn)差越大,樣本數(shù)據(jù)的波動就越大。數(shù)學(xué)上一般用 EX-E(X)2來度量隨程度,稱為 X 的方差。量X 與其均值 E(X)即期望的偏離方差是標(biāo)準(zhǔn)差的平方方差和標(biāo)準(zhǔn)差。方差和標(biāo)準(zhǔn)差是測算離散趨勢最重要、最常用的指標(biāo)。方差是各變量值與其均值離差平方的平均數(shù),它是測算數(shù)值型數(shù)據(jù)離散程度的最重要的方法。標(biāo)準(zhǔn)差為方差的平方根,用 S 表示。StdDev 返回 expr 的樣本標(biāo)準(zhǔn)偏差。它可

32、用作和分析函數(shù)。它與stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。Oracle 數(shù)據(jù)庫中,標(biāo)準(zhǔn)偏差計算結(jié)果與 variance 用作集聚函數(shù)計算結(jié)果的平方根相等。該函數(shù)參數(shù)可取任何數(shù)字類型或是任何能隱式轉(zhuǎn)換成數(shù)字類型的非數(shù)字類型。STDDEV功能描述:計算當(dāng)前行關(guān)于組的標(biāo)準(zhǔn)偏離。(Standard Deviation)SLE:STDDEV_S功能描述:該函數(shù)計算累積樣本標(biāo)準(zhǔn)偏離,并返回總體變量的平方根,其返回值與 VAR_POP 函數(shù)的平方根相同。(Standard DeviationSle)SLE:它與 stddev_

33、s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。SELECTdepartment_id,_name| |last_name employee_name,hire_date,salary,STDDEV_S(salary) OVER (PARTITION BY department_idhire_date) AS cum_sdevORDERBYFROM employeesWHERE department_id in (20,30,60);STDDEV 和 STDDEV_S的區(qū)別SELECT_name| |last_name employee

34、_name,hire_date,salary,STDDEV(salary) OVER (ORDER BY hire_date) StdDev,STDDEV_S(salary) OVER (ORDER BY hire_date) AS cum_sdevFROM employeesVAR_POP功能描述:(Variance Population)該函數(shù)返回非空集合的總體變量(忽略 null),VAR_POP 進(jìn)行如下計算:(SUM(expr2) - SUM(expr)2 / COUNT(expr) / COUNT(expr)VAR_S功能描述:(VarianVAR_POP 進(jìn)行如下計算:le)該函

35、數(shù)返回非空集合的樣本變量(忽略 null),(SUM(expr*expr)-SUM(expr)*SUM(expr)/COUNT(expr)/(COUNT(expr)-1)SLE:VARIANCE功能描述:該函數(shù)返回表達(dá)式的變量,Oracle 計算該變量如下:如果表達(dá)式中行數(shù)為 1,則返回 0如果表達(dá)式中行數(shù)大于 1,則返回 VAR_SSLE:SELECTdepartment_id,_name| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (PARTITION BY department_id ORDER BY hi

36、re_date) ASSTDDEV,STDDEV_S(salary) OVER (PARTITION BY department_id ORDER BYhire_date) AS STDDEV_S,VAR_POP(salary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VAR_POP,VAR_SAS VAR_S(salary) OVER (PARTITION BY department_id ORDER BY hire_date),VARIANalary) OVER (PARTITION BY department_id O

37、RDER BY hire_date)AS VARIANCEFROM employees協(xié)方差分析是建立在方差分析和回歸分析基礎(chǔ)之上的一種統(tǒng)計分析方法。方差分析是從質(zhì)量因子的角度探討般說來,質(zhì)量因子是可以人為控制的。不同水平對實(shí)驗指標(biāo)影響的差異。一回歸分析是從數(shù)量因子的角度出發(fā),通過建立回歸方程來研究實(shí)驗指標(biāo)與一個(或幾個)因子之間的數(shù)量關(guān)系。但大多數(shù)情況下,數(shù)量因子是不可以人為加以控制的。兩個不同參數(shù)之間的方差就是協(xié)方差若兩個隨量 X 和 Y 相互獨(dú)立,則 E(X-E(X)(Y-E(Y)=0,因而若上述數(shù)學(xué)期望不為零,則 X 和 Y 必不是相互獨(dú)立的,亦即它們之間存在著一定的關(guān)系。定義E(X-

38、E(X)(Y-E(Y)稱為隨量 X 和 Y 的協(xié)方差,記作 COV(X,Y),即COV(X,Y)=E(X-E(X)(Y-E(Y)。COVAR_POP功能描述:返回一對表達(dá)式的總體協(xié)方差。SLE:COVAR_S功能描述:返回一對表達(dá)式的樣本協(xié)方差SLE:SELECTa.department_id,a.employee_id,b.employee_id manager_id,a._name| |a.last_nameemployee_name,b._name| |b.last_namemanager_name,a.hire_date,a.salary employee_salary,b.salar

39、y manager_salary,COVAR_POP(a.salary,b.salary) OVER (ORDER BYa.department_id,a.hire_date ) AS CUM_COVP,COVAR_S(a.salary,b.salary) OVER (ORDERBYa.department_id,a.hire_date ) AS CUM_SFROM employees a,employees bWHERE a.manager_id=b.employee_id(+)CORR功能描述:返回一對表達(dá)式的相關(guān)系數(shù),它是如下的縮寫:COVAR_POP(expr1,expr2)/STDD

40、EV_POP(expr1)*STDDEV_POP(expr2)從統(tǒng)計上講,相關(guān)性是變量之間關(guān)聯(lián)的強(qiáng)度,變量之間的關(guān)聯(lián)意味著在某種程度上一個變量的值可由其它的值進(jìn)行。通過返回一個-11 之間的一個數(shù),相關(guān)系數(shù)給出了關(guān)聯(lián)的強(qiáng)度,0 表示不相關(guān)。SELECTa.department_id,a._name| |a.last_name employee_name,b._name| |b.last_name manager_name,a.hire_date,a.salary employee_salary,b.salary manager_salary,CORR(a.salary,b.salary) OV

41、ER (ORDER BYAS CORRa.department_id,a.hire_date)FROM employees a,employees bWHERE a.manager_id=b.employee_id(+)Oracle 分析函數(shù)統(tǒng)計分析函數(shù)方差和標(biāo)準(zhǔn)差:樣本中各數(shù)據(jù)與樣本平均數(shù)的差的平方和的平均數(shù)叫做樣本方差;樣本方差的算術(shù)平方根叫做樣本標(biāo)準(zhǔn)差。樣本方差和樣本標(biāo)準(zhǔn)差都是衡量一個樣本波動大小的量,樣本方差或樣本標(biāo)準(zhǔn)差越大,樣本數(shù)據(jù)的波動就越大。數(shù)學(xué)上一般用 EX-E(X)2來度量隨程度,稱為 X 的方差。量X 與其均值 E(X)即期望的偏離方差是標(biāo)準(zhǔn)差的平方方差和標(biāo)準(zhǔn)差。方差和標(biāo)準(zhǔn)

42、差是測算離散趨勢最重要、最常用的指標(biāo)。方差是各變量值與其均值離差平方的平均數(shù),它是測算數(shù)值型數(shù)據(jù)離散程度的最重要的方法。標(biāo)準(zhǔn)差為方差的平方根,用 S 表示。StdDev 返回 expr 的樣本標(biāo)準(zhǔn)偏差。它可用作和分析函數(shù)。它與stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。Oracle 數(shù)據(jù)庫中,標(biāo)準(zhǔn)偏差計算結(jié)果與 variance 用作集聚函數(shù)計算結(jié)果的平方根相等。該函數(shù)參數(shù)可取任何數(shù)字類型或是任何能隱式轉(zhuǎn)換成數(shù)字類型的非數(shù)字類型。STDDEV功能描述:計算當(dāng)前行關(guān)于組的標(biāo)準(zhǔn)偏離。(Standard Deviation)

43、SLE:STDDEV_S功能描述:該函數(shù)計算累積樣本標(biāo)準(zhǔn)偏離,并返回總體變量的平方根,其返回值與 VAR_POP 函數(shù)的平方根相同。(Standard DeviationSle)SLE:它與 stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。SELECTdepartment_id,_name| |last_name employee_name,hire_date,salary,STDDEV_S(salary) OVER (PARTITION BY department_idhire_date) AS cum_sdevORDE

44、RBYFROM employeesWHERE department_id in (20,30,60);STDDEV 和 STDDEV_S的區(qū)別SELECT_name| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (ORDER BY hire_date) StdDev,STDDEV_S(salary) OVER (ORDER BY hire_date) AS cum_sdevFROM employeesVAR_POP功能描述:(Variance Population)該函數(shù)返回非空集合的總體變量(忽略 null),V

45、AR_POP 進(jìn)行如下計算:(SUM(expr2) - SUM(expr)2 / COUNT(expr) / COUNT(expr)VAR_S功能描述:(VarianVAR_POP 進(jìn)行如下計算:le)該函數(shù)返回非空集合的樣本變量(忽略 null),(SUM(expr*expr)-SUM(expr)*SUM(expr)/COUNT(expr)/(COUNT(expr)-1)SLE:VARIANCE功能描述:該函數(shù)返回表達(dá)式的變量,Oracle 計算該變量如下:如果表達(dá)式中行數(shù)為 1,則返回 0如果表達(dá)式中行數(shù)大于 1,則返回 VAR_SSLE:SELECTdepartment_id,_name

46、| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (PARTITION BY department_id ORDER BY hire_date) ASSTDDEV,STDDEV_S(salary) OVER (PARTITION BY department_id ORDER BYhire_date) AS STDDEV_S,VAR_POP(salary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VAR_POP,VAR_SAS VAR_S(salar

47、y) OVER (PARTITION BY department_id ORDER BY hire_date),VARIANalary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VARIANCEFROM employees協(xié)方差分析是建立在方差分析和回歸分析基礎(chǔ)之上的一種統(tǒng)計分析方法。方差分析是從質(zhì)量因子的角度探討般說來,質(zhì)量因子是可以人為控制的。不同水平對實(shí)驗指標(biāo)影響的差異。一回歸分析是從數(shù)量因子的角度出發(fā),通過建立回歸方程來研究實(shí)驗指標(biāo)與一個(或幾個)因子之間的數(shù)量關(guān)系。但大多數(shù)情況下,數(shù)量因子是不可以人為加以控制的。兩

48、個不同參數(shù)之間的方差就是協(xié)方差若兩個隨量 X 和 Y 相互獨(dú)立,則 E(X-E(X)(Y-E(Y)=0,因而若上述數(shù)學(xué)期望不為零,則 X 和 Y 必不是相互獨(dú)立的,亦即它們之間存在著一定的關(guān)系。定義E(X-E(X)(Y-E(Y)稱為隨量 X 和 Y 的協(xié)方差,記作 COV(X,Y),即COV(X,Y)=E(X-E(X)(Y-E(Y)。COVAR_POP功能描述:返回一對表達(dá)式的總體協(xié)方差。SLE:COVAR_S功能描述:返回一對表達(dá)式的樣本協(xié)方差SLE:SELECTa.department_id,a.employee_id,b.employee_id manager_id,a._name| |

49、a.last_nameemployee_name,b._name| |b.last_namemanager_name,a.hire_date,a.salary employee_salary,b.salary manager_salary,COVAR_POP(a.salary,b.salary) OVER (ORDER BYa.department_id,a.hire_date ) AS CUM_COVP,COVAR_S(a.salary,b.salary) OVER (ORDER BYa.department_id,a.hire_date ) AS CUM_SFROM employees a

50、,employees bWHERE a.manager_id=b.employee_id(+)CORR功能描述:返回一對表達(dá)式的相關(guān)系數(shù),它是如下的縮寫:COVAR_POP(expr1,expr2)/STDDEV_POP(expr1)*STDDEV_POP(expr2)從統(tǒng)計上講,相關(guān)性是變量之間關(guān)聯(lián)的強(qiáng)度,變量之間的關(guān)聯(lián)意味著在某種程度上一個變量的值可由其它的值進(jìn)行。通過返回一個-11 之間的一個數(shù),相關(guān)系數(shù)給出了關(guān)聯(lián)的強(qiáng)度,0 表示不相關(guān)。SELECTa.department_id,a._name| |a.last_name employee_name,b._name| |b.last_n

51、ame manager_name,a.hire_date,a.salary employee_salary,b.salary manager_salary,CORR(a.salary,b.salary) OVER (ORDER BY a.department_id,a.hire_dateAS CORR)FROM employees a,employees bWHERE a.manager_id=b.employee_id(+)Oracle 分析函數(shù)統(tǒng)計分析函數(shù)方差和標(biāo)準(zhǔn)差:樣本中各數(shù)據(jù)與樣本平均數(shù)的差的平方和的平均數(shù)叫做樣本方差;樣本方差的算術(shù)平方根叫做樣本標(biāo)準(zhǔn)差。樣本方差和樣本標(biāo)準(zhǔn)差都是衡量

52、一個樣本波動大小的量,樣本方差或樣本標(biāo)準(zhǔn)差越大,樣本數(shù)據(jù)的波動就越大。數(shù)學(xué)上一般用 EX-E(X)2來度量隨程度,稱為 X 的方差。量X 與其均值 E(X)即期望的偏離方差是標(biāo)準(zhǔn)差的平方方差和標(biāo)準(zhǔn)差。方差和標(biāo)準(zhǔn)差是測算離散趨勢最重要、最常用的指標(biāo)。方差是各變量值與其均值離差平方的平均數(shù),它是測算數(shù)值型數(shù)據(jù)離散程度的最重要的方法。標(biāo)準(zhǔn)差為方差的平方根,用 S 表示。StdDev 返回 expr 的樣本標(biāo)準(zhǔn)偏差。它可用作和分析函數(shù)。它與stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。Oracle 數(shù)據(jù)庫中,標(biāo)準(zhǔn)偏差計算結(jié)果與

53、variance 用作集聚函數(shù)計算結(jié)果的平方根相等。該函數(shù)參數(shù)可取任何數(shù)字類型或是任何能隱式轉(zhuǎn)換成數(shù)字類型的非數(shù)字類型。STDDEV功能描述:計算當(dāng)前行關(guān)于組的標(biāo)準(zhǔn)偏離。(Standard Deviation)SLE:STDDEV_S功能描述:該函數(shù)計算累積樣本標(biāo)準(zhǔn)偏離,并返回總體變量的平方根,其返回值與 VAR_POP 函數(shù)的平方根相同。(Standard DeviationSle)SLE:它與 stddev_s的不同之處在于,當(dāng)計算的輸入數(shù)據(jù)只有一行時,stddev 返回 0,而 stddev_s返回 null。SELECTdepartment_id,_name| |last_name e

54、mployee_name,hire_date,salary,STDDEV_S(salary) OVER (PARTITION BY department_idhire_date) AS cum_sdevORDERBYFROM employeesWHERE department_id in (20,30,60);STDDEV 和 STDDEV_S的區(qū)別SELECT_name| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (ORDER BY hire_date) StdDev,STDDEV_S(salary) OVER

55、 (ORDER BY hire_date) AS cum_sdevFROM employeesVAR_POP功能描述:(Variance Population)該函數(shù)返回非空集合的總體變量(忽略 null),VAR_POP 進(jìn)行如下計算:(SUM(expr2) - SUM(expr)2 / COUNT(expr) / COUNT(expr)VAR_S功能描述:(VarianVAR_POP 進(jìn)行如下計算:le)該函數(shù)返回非空集合的樣本變量(忽略 null),(SUM(expr*expr)-SUM(expr)*SUM(expr)/COUNT(expr)/(COUNT(expr)-1)SLE:VAR

56、IANCE功能描述:該函數(shù)返回表達(dá)式的變量,Oracle 計算該變量如下:如果表達(dá)式中行數(shù)為 1,則返回 0如果表達(dá)式中行數(shù)大于 1,則返回 VAR_SSLE:SELECTdepartment_id,_name| |last_name employee_name,hire_date,salary,STDDEV(salary) OVER (PARTITION BY department_id ORDER BY hire_date) ASSTDDEV,STDDEV_S(salary) OVER (PARTITION BY department_id ORDER BYhire_date) AS ST

57、DDEV_S,VAR_POP(salary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VAR_POP,VAR_SAS VAR_S(salary) OVER (PARTITION BY department_id ORDER BY hire_date),VARIANalary) OVER (PARTITION BY department_id ORDER BY hire_date)AS VARIANCEFROM employees協(xié)方差分析是建立在方差分析和回歸分析基礎(chǔ)之上的一種統(tǒng)計分析方法。方差分析是從質(zhì)量因子的角度探討般說

58、來,質(zhì)量因子是可以人為控制的。不同水平對實(shí)驗指標(biāo)影響的差異。一回歸分析是從數(shù)量因子的角度出發(fā),通過建立回歸方程來研究實(shí)驗指標(biāo)與一個(或幾個)因子之間的數(shù)量關(guān)系。但大多數(shù)情況下,數(shù)量因子是不可以人為加以控制的。兩個不同參數(shù)之間的方差就是協(xié)方差若兩個隨量 X 和 Y 相互獨(dú)立,則 E(X-E(X)(Y-E(Y)=0,因而若上述數(shù)學(xué)期望不為零,則 X 和 Y 必不是相互獨(dú)立的,亦即它們之間存在著一定的關(guān)系。定義E(X-E(X)(Y-E(Y)稱為隨量 X 和 Y 的協(xié)方差,記作 COV(X,Y),即COV(X,Y)=E(X-E(X)(Y-E(Y)。COVAR_POP功能描述:返回一對表達(dá)式的總體協(xié)方差

59、。SLE:COVAR_S功能描述:返回一對表達(dá)式的樣本協(xié)方差SLE:SELECTa.department_id,a.employee_id,b.employee_id manager_id,a._name| |a.last_nameemployee_name,b._name| |b.last_namemanager_name,a.hire_date,a.salary employee_salary,b.salary manager_salary,COVAR_POP(a.salary,b.salary) OVER (ORDER BYa.department_id,a.hire_date ) AS

60、 CUM_COVP,COVAR_S(a.salary,b.salary) OVER (ORDERBYa.department_id,a.hire_date ) AS CUM_SFROM employees a,employees bWHERE a.manager_id=b.employee_id(+)CORR功能描述:返回一對表達(dá)式的相關(guān)系數(shù),它是如下的縮寫:COVAR_POP(expr1,expr2)/STDDEV_POP(expr1)*STDDEV_POP(expr2)從統(tǒng)計上講,相關(guān)性是變量之間關(guān)聯(lián)的強(qiáng)度,變量之間的關(guān)聯(lián)意味著在某種程度上一個變量的值可由其它的值進(jìn)行。通過返回一個-11

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論