1 getdate() 返回当前系统日期
1
|
select getdate() |
2 dateadd(日期部分,常数,日期) 返回将日期的指定日期部分加常数后的结果返回
常数为正
1
|
select dateadd(yy,1,getdate()) |
等同于
1
|
select dateadd( year ,1,getdate()) |
常数为负数
1
|
select dateadd(yy,-2,getdate()) |
常数为小数(直接舍去小数部分)
1
2
3
|
select dateadd(yy,2.4,getdate()) select dateadd(yy,2.5,getdate()) select dateadd(yy,2.6,getdate()) |
3 datediff( 日期部分,日期1,日期2) 返回两个日期之间的差值,日期部分(日期1-日期2)
日期1>日期2
1
|
select datediff(yy,‘2008/1/1',getdate()) |
日期1<日期2
1
|
select datediff(yy,getdate(),‘2008/1/1') |
4 datename() 返回指定日期的日期部分的字符串(返回字符串)
1
|
select datename(yy,getdate()) |
'+'是连接符号
1
|
select datename(yy,getdate())+datename(qq,getdate()) --qq 是quatrer代表季度 |
5 datepart() 返回指定日期的日期部分的整数(返回整数)
1
|
select datepart(yy,getdate()) |
'+'是加符号
1
|
select datepart(yy,getdate())+datepart(qq,getdate()) |
6 day() 返回指定日期的日部分的整数
1
|
select day (getdate()) |
7 month() 返回指定日期的月部分的整数
1
|
select month (getdate()) |
8 year() 返回指定日期的年部分的整数
1
|
select year (getdate()) |
补充:
时间转换:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
select convert ( varchar (12),getdate(),101) 07/16/2010 select convert ( varchar (12),getdate(),102) 2010.07.16 select convert ( varchar (12),getdate(),103) 16/07/2010 select convert ( varchar (12),getdate(),104) 16.07.2010 select convert ( varchar (12),getdate(),105) 16-07-2010 select convert ( varchar (12),getdate(),106) 16 jul 2010 select convert ( varchar (12),getdate(),107) jul 16, 2010 select convert ( varchar (12),getdate(),108) 11:58:49 select convert ( varchar (12),getdate(),109) jul 16 2010 select convert ( varchar (12),getdate(),110) 07-16-2010 select convert ( varchar (12),getdate(),111) 2010/07/16 select convert ( varchar (12),getdate(),112) 20100716 select convert ( varchar (12),getdate(),113) 16 jul 2010 select convert ( varchar (12),getdate(),114) 11:59:35:930 |
当月第一天
1
|
select dateadd(mm,datediff(mm,0,getdate()),0) |
本周星期一
1
|
select dateadd(wk,datediff(wk,0,getdate()),0) |
本年第一天
1
|
select dateadd(yyyy,datediff(yyyy,0,getdate()),0) |
--本月最后1天
1
|
select dateadd(ms,-3,dateadd(mm,datediff(mm,0,getdate())+1,0)) |
--本周最后一天,注意sql精确到3毫秒。。。
1
|
select dateadd(ms,-3,dateadd(wk,datediff(wk,0,getdate())+1,0)); |
本月的第一个星期一
1
|
select dateadd(wk,datediff(wk,0,dateadd(dd,6-datepart( day ,getdate()),getdate())),0); |
到此这篇关于sql server中常用日期函数的具体使用的文章就介绍到这了,更多相关sql server常用日期函数内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/qq_37192571/article/details/108868997