Sql Server基本函数

1.字符串函数
长度与分析用
datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格
substring(expression,start,length) 不多说了,取子串
right(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) char(ascii) 两函数对应,取ascii码,根据ascii吗取字符

字符串查找
charindex(char_expr,expression) 返回char_expr的起始位置
patindex("%pattern%",expression) 返回指定模式的起始位置,否则为0

2.数学函数
abs(numeric_expr) 求绝对值
ceiling(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) 根据正数,0,负数,,返回+1,0,-1
sqrt(float_expr) 平方根

3.日期函数
getdate() 返回日期
datename(datepart,date_expr) 返回名称如 June
datepart(datepart,date_expr) 取日期一部份
datediff(datepart,date_expr1.dateexpr2) 日期差

date-part :  
  year   |   quarter   |   month   |   week   |   day   |   hour   |   minute   |   second   |   millisecond  
   
参数  
date-part           指定要计算其间隔的日期部分。     
date-expression1           某一间隔的起始日期。从   date-expression2   中减去该值,返回两个参数之间   date-parts   的数值。     
date-expression2           某一间隔的结束日期。从该值中减去   Date-expression1,返回两个参数之间   date-parts   的数值。  
   
示例  
下面的语句返回   1:      
SELECT   datediff(   hour,   '4:00AM',   '5:50AM'   )
下面的语句返回   102:    
SELECT   datediff(   month,   '1987/05/02',   '1995/11/15'   )
下面的语句返回   0:  
SELECT   datediff(   day,   '00:00',   '23:59'   )
下面的语句返回   4:    
SELECT   datediff(   day,   '1999/07/19   00:00',   '1999/07/23   23:59'   )
下面的语句返回   0:     
SELECT   datediff(   month,   '1999/07/19',   '1999/07/23'   )
下面的语句返回   1:  
SELECT   datediff(   month,   '1999/07/19',   '1999/08/23'   )   用法  
  此函数计算两个指定日期之间日期部分的数值。结果为日期部分中等于(date2   -   date1)的有符号的整数值。     
  当结果不是日期部分的偶数倍时,DATEDIFF   将被截断而不是被舍入。  
  当使用   day   作为日期部分时,DATEDIFF   返回两个指定的时间之间(包括第二个日期但不包括第一个日期)的午夜数目。  
  当使用   month   作为日期部分时,DATEDIFF   返回两个日期之间(包括第二个日期但不包括第一个日期)月中第一天的数目。  
  当使用   week   作为日期部分时,DATEDIFF   返回两个日期(包括第二个日期但不包括第一个日期)之间星期日的数目。  
   
  对于更小的时间单位存在溢出值:  
  milliseconds           24   天  
  seconds           68   年  
  minutes           4083   年  
  others           没有溢出限制  
   
  如果超出这些限制,此函数将返回溢出错误。
 

dateadd(datepart,number,date_expr) 返回日期加上 number


日期转换
convert()

4.系统函数
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) 是否是有效标识符

你可能感兴趣的:(sql,SQL Server)