SQL 日期函数
主要说明两个 一个是sql中的日期函数CONVERT的用法和如何获取某天的是本年内的第几周或者第几天或者......
1、SQL中CONVERT转化函数的用法
说明:
此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)
相互转换的时候才用到.
格式:
CONVERT(data_type,expression[,style])
例子:
Select CONVERT(varchar(30),getdate(),101) now
结果为
now
---------------------------------------
09/15/2001
select CONVERT(varchar(60) , getdate(), 110) as now
style数字在转换时间时的含义如下
-------------------------------------------------------------------------------------------------
Style(2位表示年份) | Style(4位表示年份) | 输入输出格式
-------------------------------------------------------------------------------------------------
100 | mon dd yyyy hh:miAM(或PM) 例: 06 7 2007 4:31PM
-------------------------------------------------------------------------------------------------
101 | mm/dd/yy 例: 06/07/2007
-------------------------------------------------------------------------------------------------
102 | yyyy.mm.dd 例: 2007.06.07
-------------------------------------------------------------------------------------------------
103 | dd/mm/yy 例: 07/06/2007
-------------------------------------------------------------------------------------------------
104 | dd.mm.yy 例: 07.06.2007
-------------------------------------------------------------------------------------------------
105 | dd-mm-yy 例: 07-06-2007
-------------------------------------------------------------------------------------------------
106 | dd mon yy 例: 07 06 2007
-------------------------------------------------------------------------------------------------
107 | mon dd,yy 例: 06 07, 2007
-------------------------------------------------------------------------------------------------
108 | hh:mm:ss 时间 例: 16:37:01
-------------------------------------------------------------------------------------------------
109 | mon dd yyyy hh:mi:ss:mmmmAM(或PM) 例: 06 7 2007 4:37:17:900PM
-------------------------------------------------------------------------------------------------
110 | mm-dd-yy 例: 06-07-2007
-------------------------------------------------------------------------------------------------
111 | yy/mm/dd 例: 2007/06/07
-------------------------------------------------------------------------------------------------
112 | yymmdd 例: 20070607
-------------------------------------------------------------------------------------------------
113 | dd mon yyyy hh:mi:ss:mmm(24小时制) 例: 07 06 2007 16:38:35:967
-------------------------------------------------------------------------------------------------
114 | hh:mi:ss:mmm(24小时制) 时间 例: 16:39:00:060
-------------------------------------------------------------------------------------------------
120 | yyyy-mm-dd hh:mi:ss(24小时制) 例: 2007-06-07 16:39:17
-------------------------------------------------------------------------------------------------
121 | yyyy-mm-dd hh:mi:ss:mmm(24小时制) 例: 2007-06-07 16:39:30.580
-------------------------------------------------------------------------------------------------
获取今天的日期
select getDate() as todayDate 结果如:2007-06-07 16:44:27.173
2、获取某天的是本年内的第几周或者第几天或者......
getdate() 返回日期
datename(datepart,date_expr) 返回名称如 June
datepart(datepart,date_expr) 取日期一部份
datediff(datepart,date_expr1.dateexpr2) 日期差
dateadd(datepart,number,date_expr) 返回日期加上 number
其中 date_expr是日期表达式; 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 毫秒 返回某日的当前是第几号秒