sqlserver(05)中一些函数的使用说明:
一、时间函数:
DateAdd([year、Quarter、month、day],number,date)
功能说明:用于特定的时间范围内相加或相减
参数说明:[year、Quarter、month、day]为操作的基准单位,年,季度,月份,日...
number:操作数,正为加,负为减如:
DataAdd(year,10,getdate()):返回当前时间的10年后的年份
DataAdd(month,-2,getdate()):返回当前时间的2个月前的月份
datename([year、Quarter、month、day],date)
功能说明:获取特定时间的年月日星期等,类型为int
参数说明:[year、Quarter、month、day]为操作的基准单位,年,季度,月份,日...如:
DateName(year,getdate()):返回当前时间的年份
year(date):返回日期的年,int类型
month(date):返回日期的月,int类型
day(date):返回日期的日,int类型
datediff([year、Quarter、month、day],startTime,endTime)
功能说明:返回特定的日期差
参数说明:[year、Quarter、month、day],操作的年、月、日等,
startTime为起始时间
endTime为结束时间.
作用为结束时间减去起始时间如:
DateDiff(year,'2011-6-20','2012-4-5')返回1忽略其它值
GetDate():获取当前系统时间
isDate(date) 是否合法日期,是返回1否返回0
SET DATEFIRST 1-7;设置当前数据库的每周星期几为第一天,
print @@DATEFIRST :查看当前数据库每周的第一天是星期几
二、转换函数
convert函数:
ronvert(data_type(len),operobj,style)
参数说明:data_type(len)要转换的类型,带可选的长度,
operobj:要操作的目标,
style:规定日期/时间的输出格式(如下:)
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 |
cast函数:
cast(operstr as data_style(len))
参数说明:operstr要操作的对象,
date_type(len):要转换的类型,带可选的长度如:
cast(123 as decimal(18,2)) 输出:123.00
三、替换函数
replace(data,'char','char1'):将现有字符以某种格式替换,char为要替换的字符,char1为以什么字符替换如:
replace('2011/05/06','-0','-') 返回2011/5/6
四、字符串处理函数
substring(str,startlen,endlen)字符串截取函数,
[str,startlen,endlen]:
str:要操作的字符串
startlen:操作的起始位置
endlen:要截取的位置
lower(str):大写转小写
upper(str):小写转大写
left(str,len):左起截取len个单位
right(str,len):右起截取len个单位
LTRIM(str):去掉左边的空格
RTRIM(str):去掉右边的空格
CHARINDEX('char',str):返回char出现的第一个位置
目前主要是使用的这些函数比较多,其它的还待发现;