SQL函数

聚合函数:
聚合函数对一组值执行计算,并返回单个值。 除了 COUNT 以外,聚合函数都会忽略空值。 聚合函数经常与 SELECT 语句的 GROUP BY 子句一起使用。

ANG (列名)求平均值
SUM (列名) 求和
MAX (列名)求最大值
MIN (列名)求最小值
COUNT (*)统计记录个数

列子:放在 select和from中间 每一个聚合函数返回一个数值 可以在一行 聚合函数只能跟聚合函数使用
select MIN (oil),MAX (oil),SUM (price) from car

结合 group by 分组 按照什么什么列 进行分组 select跟from中间这能跟哪一列,可以加聚合
聚合最长匹配的就是group by
先分组 在聚合
去重显示 凡是重名的分成一组 把这一组的组名显示出来
例子:
select brand,MIN (oil) from car group by brand
个数:
select COUNT(*)可以*代替 计算的数据行的行数 不需要制定列名
其他聚合函数括号加列名
加having 进行筛选
例子:
select brand from car group by brand having COUNT (*)>=3
having 只能跟在group by 后面使用 进行再次筛选


日期时间函数:
例子
获取系统时间:
select SYSDATETIME ():获取电脑系统时间
select GETDATE ():获取数据库服务时间窗
数据库运行在数据库服务上 离得数据库服务近
离得电脑系统远
print sysdatetime()
print :把数据输出到消息框


获取一个时间的年,月,日,时,分,秒
获取系统的 年 月 日 返回 int 类型
select YEAR(GETDATE())
select MONTH(GETDATE())
select DAY(GETDATE())

DATENAME:返回表示指定 date 的指定 datepart(日期时间段 量词) 的字符串
例子:
SELECT DATENAME(year, '2015-5-5')
返回第多少天
SELECT DATENAME(DAYOFYEAR, '2015-5-5')

DATEPART:跟DATENAME作用一样区别是DATEPART返回的是int DATENAME返回的是字符串
例子:
select DATEPART (DAYOFYEAR,'2015-5-5')

DATEADD:将指定 number 时间间隔(有符号整数)与指定 date 的指定 datepart 相加后,返回该 date。 往某一个日期时间值上面增加日期时间段
例子:在系统时间加50天 指定一个时间单位 给一个数量 给一个时间
select DATEADD(DAY,50,GETDATE())

字符串函数:

STR:返回由数字数据转换来的字符数据
例子:
SELECT STR(123.45, 6, 1)

LEFT:返回字符串中从左边开始指定个数的字符。
例子:截取开头
select LEFT ('adfasdf',4)
截取结尾
select RIGHT('asdfge',3)
返回字符串长度
select LEN ('asdfasf3')
翻转字符串
select REVERSE ('fdsaefa')
大写
select UPPER ('adf')
小写
select LOWER ('DDD')
去除左空格 前空格
print LTRIM (' asdfsafda' )
去除有空格 后空格
print RTRIM (' asdfsafda' )

RIGHT
LEN
REVERSE
REPLICATE
SUBSTRING:截取字符串
例子:从什么位置截多么长
select SUBSTRING ('asdfaew',3,2)

UPPER
LTRIM
RTRIM
REPLACE:替换 用另一个字符串值替换出现的所有指定字符串值。
第一个参数 要搜索的字符串表达式,第二个参数要查找的子字符串,第三个参数要替换的字符串
例子:
select REPLACE('adfafafa','fa','vvv')

类型转换函数:将表达式由一种数据类型转换为另一种数据类型 把字符串转换为数值类型要么把数值类型转换为字符串类型
cast():先写变量或者数值 然后as 什么类型

例子:
select cast('123' as int)
CONVERT()先写类型然后变量 结果一样
select CONVERT(int,'123')


相加 拼接
select '123'+'234'


数学函数:
ABS:取绝对值
RAND:随机数
ROUND:四舍五入
FLOOP:下限
CEILING:上限
PI:圆周率
SQRT:开根号
SQUARE:平方

例子:显示什么年什么月什么日
select ids,code,name,brand,
(CAST(YEAR (time) as varchar(10))+'年'
+CAST(MONTH (time) as varchar(10))+'月'
+CAST(DAY (time) as varchar(10))+'日') as time,
oil,POWERs,exhaust,price,pic from car

as: 起别名


例子: 起到筛选作用没取整
select *from car where CEILING(oil)>8
select *from car where CEILING(oil)>=8

原文地址:https://www.cnblogs.com/zhuxu/p/4870963.html