SQL Server 函数
常用函数类别
类别 | 作用 | 举例 |
---|---|---|
聚合函数 | 将多值合并为一个值 | MAX(),MIN(),COUNT(),AVG() |
转换函数 | 将值从一种数据类型转换为另一种 | Convert() |
日期和时间函数 | 可以更改日期和时间的值 | getdate()等 |
数学函数 | 执行三角、几何和其他数字运算 | ABS(),ACOS() |
数据库常用的聚合函数
max()--最大值
min()--最小值
sum()--总和
avg()--平均值
count()--返回行数
数学函数
ABS()--返回一个数的绝对值
ACOS()--计算一个角的反余弦值,以弧度表示
ASIN()--计算一个角的反正弦值,以弧度表示
ATAN()--计算一个角的反正切值,以弧度表示
ATN2()--计算两个值的反正切,以弧度表示
CEILING()--返回大于或等于一个数的最小整数
COS()--计算一个角的正弦值,以弧度表示
COT()--计算一个角的余切值,以弧度表示
DEGREES()--将一个角从弧度转换为角度
EXP()--指数运算
FLOOR()--返回小于或等于一个数的最大整数
LOG()--计算以2为底的自然对数
LOG10()--计算以10为底的自然对数
PI()--返回以浮点数表示的圆周率
POWER()--幂运算
RADIANS()--将一个角从角度转换为弧度
RAND()--返回以随机数算法算出的一个小数,可以接收一个可选的种子值
ROUND()--对一个小数进行四舍五入运算,使其具备特定的精度
SIGN()--根据参数是正还是负,返回–1或者1
SIN()--计算一个角的正弦值,以弧度表示
SQRT()--返回一个数的平方根
SQUARE()--返回一个数的平方
TAN()--计算一个角正切的值,以弧度表示
日期与时间函数
--DATEADD()函数
--DATEADD()函数用于在日期/时间值上加上日期单位间隔。比如,要得到2007年4月29日起90天后的日期,可以使用下列语句:
SELECT DATEADD(DAY, 90, '5-22-2020')
结果:2020-08-22 00:00:00.000
-----------------------------------------------
--可以把下面的值作为时间间隔参数传递给DATEADD()函数。
year--缩写yy, yyyy
quarter--缩写qq, q
month--缩写mm, m
dayofyear--缩写dy, y
day--缩写dd, d
week--缩写wk, ww
weekday--缩写dw, w
hour--缩写hh
minute--缩写mi, n
second--缩写ss, s
millisecond--缩写ms
microsecond--缩写mcs
nanosecond--缩写ns
Convert()函数
CONVERT()
--对于简单类型转换,CONVERT()函数和CAST()函数的功能相同,只是语法不同。
--CAST()函数一般更容易使用,其功能也更简单。
--CONVERT()函数的优点是可以格式化日期和数值,它需要两个参数:第1个是目标数据类型,第2个是源数据。
SELECT CONVERT(int, '123')
SELECT CONVERT(decimal(9,2), '123.4')
自定义函数
create function 函数名(参数)
returns 返回类型
as
begin
DECLARE @变量名 变量类型
set @变量名=select * from 表名 where 字段名=参数
return @变量名
end;
--其中第一行为函数声明
--第二行是定义函数返回值;
--as开始至end结束 为函数体
--调用函数
SELECT [dbo].[ASBSS]('asp') from BookTypes
结果: