--函数与分组查询数据
(一) 系统函数
在SQL Server 2008中系统函数是指在SQL Server 2008中自带的函数,主要分为聚合函数、数据类型转换函数、日期函数、数学函数及其他一些常用的函数。
1 、聚合函数
对一组值进行计算,然后返回一个值。主要包括SUM(求和函数)、AVG(求平均值函数)、MIN(求最小值函数)MAX(求最大值函数)、COUNT(求数量的函数)
(1)SUM函数:主要用来求某一组值的和。
SUM(列名)
【例1】求学生信息表中学生的年龄和。
学生信息表(STUINFO)
SELECT SUM(STUAGE)
FROM STUINFO;
(2)AVG函数:用来一组值的平均值的。
AVG(列名)
【例2】求学生信息表中学生年龄的平均值。
SELECT AVG(STUAGE)
FROM STUINFO;
(3)MIN函数:是用来一组值的最小值的。
MIN(列名)
【例10.3】求学生信息表中学生年龄中最小值
SELECT MIN (STUAGE)
FROM STUINFO;
(4)MAX函数:用来一组值的最大值的
MAX(列名)
【例4】求学生信息表中学生年龄的最大值。
SELECT MAX (STUAGE)
FROM STUINFO;
(5)COUNT函数:用来求一组值的个数。
COUNT(列名)
【例5】求学生信息表中学生的个数。
2、类型转换函数
在SQL Server 2008中,提供了CONVERT()和CAST()两个数据类型转换函数。
(1)CONVERT()函数
CONVERT( datatype[(length)],expression,[style])
其中,
● datatype:表示要转换的数据类型,如果要转换成CHAR、VARCHAR、BINARY或VARBINARY数据类型,还要设置数据类型的长度。
● expression:表达式,要进行数据类型转换的值或列名。
● style:用于日期格式的设置。如果要将日期型数据转换为字符型数据,则还可以使用style参数设置日期显示格式。style参数的取值与日期显示格式如下表所示。
说明:style参数可以取两类值,如果从第一类取值,则返回日期的年份为2位;如果从第二类取值,则返回日期年份为4位。
【例6】把当前数据库的时间转换成字符类型。
获取当前数据库的时间使用的函数是GETDATE()。
SELECT CONVERT(CHAR, GETDATE())
【例7】查询学生信息表中学生信息,并把学生的出生日期转换成字符类型。
SELECT STUNNAME,CONVERT(CHAR,STUSTUBIRTH,103)
FROM STUINFO
2.CAST()函数
与CONVERT相比