sqlserver常用函数大全
一、字符串函数 datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格 substring(expression,start,length) 不多说了,取子串 right(char_expr,int_expr) 返回字符串右边int_expr个字符 left(<character_expression>, <integer_expression>) ????返回character_expression 左起 integer_expression 个字符。 ltrim() 把字符串头部的空格去掉。 rtrim() 把字符串尾部的空格去掉。 str (<float_expression>[,length[, <decimal>]]) 把数值型数据转换为字符型数据 ????length 指定返回的字符串的长度,decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。 ????当length 或者decimal 为负值时,返回NULL; ????当length 小于小数点左边(包括符号位)的位数时,返回length 个*; ????先服从length ,再取decimal ; ????当返回的字符串位数小于length ,左边补足空格。 upper(char_expr) 转为大写 lower(char_expr) 转为小写 space(int_expr) 生成int_expr个空格 replicate(char_expr,int_expr)复制字符串int_expr次 reverse(char_expr) 反转字符串 stuff(char_expr1,length,char_expr2) 将字符串char_expr1中的从 ????????start开始的length个字符用char_expr2代替 ltrim(char_expr) rtrim(char_expr) 取掉空格 ascii(char) char(ascii) 两函数对应,取ascii码,根据ascii码取字符 char() 将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。 charindex(char_expr,expression) 返回char_expr的起始位置 patindex("%pattern%",expression) 返回指定模式的起始位置,否则为0 二、数学函数 trunc(45.923,1) 按指定精度截断十进制数 结果:45.9 此为oracle函数 mod(1600,300) 求除法余数 结果:100 abs(numeric_expr) 求绝对值 ceiling(numeric_expr) 取大于等于指定值的最小整数 avg(numeric_expr)取平均数 exp(float_expr) 取指数 floor(numeric_expr) 小于等于指定值得最大整数 pi() 3.1415926......... power(numeric_expr,power) 返回power次方 rand([int_expr]) 随机数产生器 round(numeric_expr,int_expr) 安int_expr规定的精度四舍五入 sign(int_expr) 根据正数,负数,返回+1,-1 sqrt(float_expr) 平方根 三、日期时间函数 getdate() 返回日期 getutcdate() ?--获取utc时间 day(getdate()) ?--取出天 month(getdate()) ?--取出月 year(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 毫秒 四、系统其他函数 suser_name() 用户登录名 user_name() 用户在数据库中的名字 user 用户在数据库中的名字 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); ????样式:用于将日期类型数据转换为字符数据类型的日期格式的样式。 | Style ID | Style 格式 | 100 或者 0 mon dd yyyy hh:miAM (或者 PM) 101 mm/dd/yy 102 yy.mm.dd 103 dd/mm/yy 104 dd.mm.yy 105 dd-mm-yy 106 dd mon yy 107 Mon dd,yy 108 hh:mm:ss 109 或者 9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM) 110 mm-dd-yy 111 yy/mm/dd 112 yymmdd 113 或者 13 dd mon yyyy hh:mm:ss:mmm(24h) 114 hh:mi:ss:mmm(24h) 120 或者 20 yyyy-mm-dd hh:mi:ss(24h) 121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h) 126 yyyy-mm-ddThh:mm:ss.mmm(没有空格) 130 dd mon yyyy hh:mi:ss:mmmAM 131 dd/mm/yy hh:mi:ss:mmmAM
---|