【SQL Server】常见系统函数

字符串函数

 分类 函数 说明
 长度分析  datalength(Char_expr)
 返回字符串包含字符数,但不包含后面的空格
 substring(expression,start,length)
 取子串
 right(char_expr,int_expr)
 返回字符串右边int_expr个字符
 left(char_expr,int_expr)
 返回字符串左边int_expr个字符
 字符操作类   upper(char_expr)
 转大写
lower(char_expr)
 转小写
 space(int_expr)
 生成int_expr个空格
 replicate(char_expr,int_expr)
 复制字符串int_expr次
 reverse(char_expr)
 反转字符串
 stuff(char_expr1,start,length,char_expr2)
 将字符串char_expr1中的从start开始的length个字符用char_expr2代替
 ltrim(char_expr)
 去掉左侧空格
 rtrim(char_expr)
 去掉右侧空格
 ascii(char)
 取字符的ASCII码
 char(ascii)
 根据ASCII码取字符
 字符串查找   charindex(char_expr,expression)
 返回char_expr的起始位置
 patindex("%pattern%",expression)
 否则为0

数学函数

函数  说明
 abs(numeric_expr)
求绝对值
 ceiling(numeric_expr)
 取大于等于指定值的最小整数(即向上取整)
 floor(numeric_expr)
 小于等于指定值得最大整数(即向下取整)
 avg(numeric_expr)
 取平均数
 exp(float_expr)
 返回e的n次方
 pi()
 圆周率π
 power(底数m,指数n)
 返回m的n次方
 rand([int_expr])
 随机数产生器
 round(numeric_expr,int_expr)
 按照int_expr规定的精度四舍五入
sign(int_expr)
根据正数,零,负数,返回+1,0,-1
sqrt(float_expr)
返回平方根

日期时间函数

函数 说明  
getdate()
返回日期  
datename(datepart,date_expr)
返回名称如 June
 
datepart(datepart,date_expr)
取日期的一部分
 
datediff(datepart,date_expr1.dateexpr2)
日期差
 
dateadd(datepart,number,date_expr)
返回日期加上 number 。datepart的
写法 取值和意义如右侧

yy 1753-9999 年份
qq 1-4 刻
mm 1-12 月
dy 1-366 日
dd 1-31 日
wk 1-54 周
dw 1-7 周几
hh 0-23 小时
mi 0-59 分钟
ss 0-59 秒
ms 0-999 毫秒
convert()
日期转换  

系统其他函数

函数 说明
suser_name()
用户登录名
user_name()
用户在数据库中的名字
show_role()
对当前用户起作用的规则
db_name()
数据库名
object_name(obj_id)
数据库对象名
col_name(obj_id,col_id)
列名
col_length(objname,colname)
列长度
valid_name(char_expr)
是否是有效标识符

类型转换函数

函数 说明
convert (数据类型[(长度)],表达式[,样式])
将一种数据类型的表达式显式转换为另一种数据类型的表达式;
长度:如果数据类型允许设置长度,可以设置长度,例如 varchar(10);
样式:用于将日期类型数据转换为字符数据类型的日期格式的样式
cast (表达式 AS 数据类型[(长度)])
将一种数据类型的表达式显式转换为另一种数据类型的表达式。
例如:select cast(123 as nvarchar) 返回123
select N'年龄:' + cast(23 as nvarchar) 返回 年龄:23

系统函数

函数 说明 例子
newid 无参数
返回一个GUID(全局唯一表示符)值

 select newid()  

返回:2E6861EF-F4DB-4FFE-86EB-637482FE982J2

isnumeric (任意表达式)
判断表达式是否为数值类型或者是否可以转换成数值。
 
isnull (任意表达式1,任意表达式2)
如果任意表达式1不为NULL,则返回它的值;否则,在将任意表达式2的类型转换为任意表达式1的类型(如果这两个类
型不同)后,返回任意表达式2的值。
 
isdate (任意表达式)
确定输入表达式是否为有效日期或可转成有效的日期
 

排名函数

函数 说明
row_number 无参数
为结果集内每一行进行编号,从1开始后面行依次加1,常用于产生序号;

聚合函数

函数 说明
count()
返回组中的总条数,count(*)返回组中所有条数,包括NULL值和重复值项,如果抒写表达式,则忽略空值,表达式为
任意表达式
max()
返回组中的最大值,空值将被忽略,表达式为数值表达式,字符串表达式,日期
min()
返回组中的最小值,空值将被忽略,表达式为数值表达式,字符串表达式,日期
sum()
返回组中所有值的和,空值将被忽略,表达式为数据表达式
avg()
返回组中所有值的平均值,空值将被忽略,表达式为数据表达式
posted @ 2024-07-22 08:09  陆陆无为而治者  阅读(8)  评论(0编辑  收藏  举报