OceanBase STDDEV_POP

2021-06-24 14:21 更新

STDDEV_POP 函數(shù)計算總體標(biāo)準(zhǔn)差。STDDEV_POP 函數(shù)將數(shù)值型數(shù)據(jù)作為參數(shù),返回數(shù)值型數(shù)據(jù)。

注意 
總體標(biāo)準(zhǔn)差是總體方差的算術(shù)平方根。

語法

STDDEV_POP([ALL] expr) [ OVER (analytic_clause) ]

作為分析函數(shù)使用時,您需要使用窗口函數(shù)的完整語法,它對一組行的集合進(jìn)行計算并返回多個值 。作為聚合函數(shù)使用時,該函數(shù)對一組行的集合進(jìn)行聚合計算,結(jié)果只能返回一個值,此時不需要加 OVER 關(guān)鍵字。

參數(shù)

參數(shù)

說明

ALL

全部數(shù)值列。

OVER

使用 OVER 子句定義窗口進(jìn)行計算。

expr

是數(shù)值類型(NUMBER、FLOAT、BINARY_FLOAT 和 BINARY_DOUBLE)的表達(dá)式。

返回類型

返回類型與參數(shù) expr 的數(shù)據(jù)類型相同。

示例

分析函數(shù)示例

以下語句創(chuàng)建了表 employees,并向里面插入數(shù)據(jù):

CREATE TABLE employees (manager_id INT,last_name varchar(50),hiredate varchar(50),SALARY INT);
INSERT INTO employees VALUES(100, 'Raphaely', '2017-07-01', 1700);
INSERT INTO employees VALUES(100, 'De Haan', '2018-05-01',11000);      
INSERT INTO employees VALUES(100, 'Errazuriz', '2017-07-21', 1400);
INSERT INTO employees VALUES(100, 'Hartstein', '2019-05-01',14000);     
INSERT INTO employees VALUES(100, 'Raphaely', '2017-07-22', 1700);
INSERT INTO employees VALUES(100, 'Weiss',  '2019-07-11',13500);     
INSERT INTO employees VALUES(100, 'Russell', '2019-10-05', 13000);
INSERT INTO employees VALUES(100, 'Partners',  '2018-12-01',14000);     
INSERT INTO employees VALUES(200, 'Ross',  '2019-06-11',13500);     
INSERT INTO employees VALUES(200, 'Bell', '2019-05-25', 13000);
INSERT INTO employees VALUES(200, 'Part',  '2018-08-11',14000);   
COMMIT;

調(diào)用函數(shù)并執(zhí)行以下語句:

SELECT manager_id, last_name, salary, STDDEV_POP(salary) OVER (PARTITION BY manager_id) AS pop_std
FROM employees ORDER BY manager_id, last_name, salary, pop_std;

查詢結(jié)果如下:

+------------+-----------+--------+-------------------------------------------+
| MANAGER_ID | LAST_NAME | SALARY | POP_STD                                   |
+------------+-----------+--------+-------------------------------------------+
|        100 | De Haan   |  11000 | 5637.250548804798333699350384281939588505 |
|        100 | Errazuriz |   1400 | 5637.250548804798333699350384281939588505 |
|        100 | Hartstein |  14000 | 5637.250548804798333699350384281939588505 |
|        100 | Partners  |  14000 | 5637.250548804798333699350384281939588505 |
|        100 | Raphaely  |   1700 | 5637.250548804798333699350384281939588505 |
|        100 | Raphaely  |   1700 | 5637.250548804798333699350384281939588505 |
|        100 | Russell   |  13000 | 5637.250548804798333699350384281939588505 |
|        100 | Weiss     |  13500 | 5637.250548804798333699350384281939588505 |
|        200 | Bell      |  13000 |  408.248290463863016366214012450981899069 |
|        200 | Part      |  14000 |  408.248290463863016366214012450981899069 |
|        200 | Ross      |  13500 |  408.248290463863016366214012450981899069 |
+------------+-----------+--------+-------------------------------------------+

聚合函數(shù)示例

調(diào)用函數(shù)并執(zhí)行以下語句:

SELECT STDDEV_POP(salary) FROM employees ;

查詢結(jié)果如下:

+-------------------------------------------+
| STDDEV_POP(SALARY)                        |
+-------------------------------------------+
| 5249.950806538512715446505486136315088416 |
+-------------------------------------------+


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號