当前位置: 首页>>代码示例>>用法及示例精选>>正文


MySQL STD()用法及代码示例

借助STD()函数,我们可以计算MySQL中表达式的总体标准偏差。但是,如果给定表达式中没有匹配的行,则返回Null。

用法:

STD(expr);

参数:此方法仅接受一个参数。

  • expr:我们要从中计算总体标准差的输入表达式。

返回值:它返回总体标准偏差。

示例1:
使用STD函数从给定的Player表中查找RunScored列的总体标准差。



创建播放器表:

CREATE TABLE Player  
(
PlayerId INT AUTO_INCREMENT,  
PlayerName VARCHAR(100) NOT NULL,
RunScored INT NOT NULL,
WicketsTaken INT NOT NULL,
PRIMARY KEY(PlayerId)
);

将数据插入表中:
要验证使用以下命令,如下所示。

SELECT  * from Player ;

输出:

PLAYERID PLAYERNAME RUNSCORED WICKETSTAKEN
1 KL Rahul 52 0
2 哈迪克·潘迪亚 30 1
3 拉文德拉(Ravindra Jadeja) 18 2
4 华盛顿·桑达尔 10 1
5 查哈尔 11 2
6 米切尔·斯塔克(Mitchell Starc) 0 3

现在,我们将找到RunScored列的总体标准差。

SELECT  STD(RunScored ) as Pop_Standard_Deviation 
FROM Player ;

输出:

POP_STANDARD_DEVIATION
16.87618308609964

示例-2:
现在,我们将找到WicketsTaken列的总体标准差。

SELECT  STD(WicketsTaken) as Pop_Std_Dev_Wickets   
FROM Player ;

输出:

POP_STD_DEV_WICKETS
0.9574271077563381

示例3:
在此示例中,我们将找到在“加尔各答”位置工作的Employee的收入总体标准差,以演示创建一个名为EmloyeeDetails的表。

CREATE TABLE EmployeeDetails(

Employee_Id INT AUTO_INCREMENT,  
Employee_Name VARCHAR(100) NOT NULL,
Working_At VARCHAR(20) NOT NULL,
Work_Location  VARCHAR(20) NOT NULL,
Joining_Date DATE NOT NULL,
Annual_Income INT  NOT NULL,
PRIMARY KEY(Employee_Id )
);

将数据插入表中:

INSERT INTO  
EmployeeDetails(Employee_Name, Working_At, Work_Location, Joining_Date, Annual_Income )

VALUES
('Amit Khan', 'XYZ Digital', 'Kolkata', '2019-10-06', 350000 ),
('Shreetama Pal', 'ABC Corp.', 'Kolkata', '2018-12-16', 500000 ),
('Aniket Sharma', 'PQR Soln.', 'Delhi', '2020-01-11', 300000 ),
('Maitree Jana', 'XYZ Digital', 'Kolkata', '2019-05-01', 400000 ),
('Priyanka Ojha', 'ABC Corp.', 'Delhi', '2019-02-13', 350000 ),
('Sayani Mitra', 'XYZ Digital', 'Kolkata', '2019-09-15', 320000 ),
('Nitin Dey', 'PQR Soln.', 'Delhi', '2019-10-06', 250000 ),
('Sujata Samanta', 'PQR Soln.', 'Kolkata', '2020-10-06', 350000 ),
('Sudip Majhi', 'ABC Corp.', 'Delhi', '2018-10-30', 600000 ),
('Sanjoy Kohli', 'XYZ Digital', 'Delhi', '2019-04-18', 450000 ) ;

要验证使用以下命令,如下所示。

Select * FROM EmployeeDetails;

输出:

EMPLOYEE_ID EMPLOYEE_NAME WORKING_AT WORK_LOCATION JOINING_DATE ANNUAL_INCOME
1 阿米特·汗 XYZ数码 Kolkata 2019-10-06 350000
2 Shreetama Pal 美国广播公司 Kolkata 2018-12-16 500000
3 阿妮克特·沙玛 PQR Soln。 Delhi 2020-01-11 300000
4 玛雅特·贾娜 XYZ数码 Kolkata 2019-05-01 400000
5 普里扬卡·奥哈(Priyanka Ojha) 美国广播公司 Delhi 2019-02-13 350000
6 沙耶尼米特拉 XYZ数码 Kolkata 2019-09-15 320000
7 尼丁·戴(Nitin Dey) PQR Soln。 Delhi 2019-10-06 250000
8 Sujata Samanta PQR Soln。 Kolkata 2020-10-06 350000
9 Sudip Majhi 美国广播公司 Delhi 2018-10-30 600000
10 Sanjoy Kohli XYZ数码 Delhi 2019-04-18 450000

现在,我们将找到工作地点为“加尔各答”的那些雇员的年收入的人口标准差

SELECT  'Kolkata' AS 'Work_Location',
STD(Annual_Income) as PopStdDevOfAnnualIncome  
FROM EmployeeDetails where Work_Location = 'Kolkata';

输出:

WORK_LOCATION POPSTDDEVOFANNUALINCOME
Kolkata 63435.006108614834

相关用法

注:本文由纯净天空筛选整理自jana_sayantan大神的英文原创作品 STD() function in MySQL。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。