1.--聚合函数(重要)
--求总数
select COUNT(字段名字EmpName) from 表名
where 字段名字='';(EmpName='张三1')
--求最大最小平均值
select MAX(字段名),MIN(字段名),avg(字段名) from 表名
select MAX(字段名)over(),EmpName from 表名
聚合函数的使用常常与分组一起使用
--聚合函数的一个注意事项
create table tblScore
(
id int identity(1,1) primary key,
math int,
english int,
chinese int
)
insert into tblScore(math,english,chinese) values(52,67,62);
缺考了,则不写,显示的为NULL
select AVG(math) from tblScore
求平均值时,值为NULL的人不算在总人数中
2. --字符串函数
--求字符串长度
LEN('我是一个字符串')
--字节数
DATALENGTH('我是一个字符串')
--转换成小写
lower()
--转换成大写
upper()
--去掉左边空格
LTrim()
--去掉右边空格
RTrim()
--去掉两边空格
Rtrim(LTrim())
--截取子字符串
substring()
select 'abcdefg',SUBSTRING('abcdefg',1,3)
3.--日期函数
--获得时间的部分信息
select YEAR('2012-07-11'),
MONTH('2012-07-11'),
DAY('2012-07-11')
--获得年龄
year((Getdate()) -Year(birthday))
--获得30天后的时间
select GETDATE(),DATEADD(DAY,30,GETDATE())
--时间求差
select datediff(SECOND,'2012-7-11 11:47:25','2012-7-11 11:48:59')
--数据转换
select '2012-12-21',CONVERT(nvarchar(20),GETDATE(),10)
--类型转换函数
CAST ( expression AS data_type)
CONVERT ( data_type, expression,[style])
Select ‘您的班级编号’+ 1 错误这里+是数学运算符
SELECT FIdNumber,
CAST(RIGHT(sNo,3) AS INTEGER) as 后三位的整数形式,
CAST(RIGHT(sNo,3) AS INTEGER)+1 as 后三位加1,
CONVERT(INTEGER,RIGHT(sNo,3))/2 as 后三位除以2
FROM student
对日期的转换。转换成各种国家格式的日期。
select convert(varchar(20),getdate(),104)
Style的格式,查sql帮助。(输入convert函数查询)
将日期转换为指定格式的字符串。日期→字符串