服务器之家

服务器之家 > 正文

SQL SERVER中常用日期函数的具体使用

时间:2021-04-24 22:45     来源/作者:樱花花

1 getdate() 返回当前系统日期

?
1
select getdate()

SQL SERVER中常用日期函数的具体使用

2 dateadd(日期部分,常数,日期) 返回将日期的指定日期部分加常数后的结果返回

SQL SERVER中常用日期函数的具体使用

常数为正

?
1
select dateadd(yy,1,getdate())

SQL SERVER中常用日期函数的具体使用

等同于

?
1
select dateadd(year,1,getdate())

SQL SERVER中常用日期函数的具体使用

常数为负数

?
1
select dateadd(yy,-2,getdate())

SQL SERVER中常用日期函数的具体使用

常数为小数(直接舍去小数部分)

?
1
2
3
select dateadd(yy,2.4,getdate())
select dateadd(yy,2.5,getdate())
select dateadd(yy,2.6,getdate())

SQL SERVER中常用日期函数的具体使用

3 datediff( 日期部分,日期1,日期2) 返回两个日期之间的差值,日期部分(日期1-日期2)

日期1>日期2

?
1
select datediff(yy,‘2008/1/1',getdate())

SQL SERVER中常用日期函数的具体使用

日期1<日期2

?
1
select datediff(yy,getdate(),‘2008/1/1')

SQL SERVER中常用日期函数的具体使用

4 datename() 返回指定日期的日期部分的字符串(返回字符串)

?
1
select datename(yy,getdate())

SQL SERVER中常用日期函数的具体使用

'+'是连接符号

?
1
select datename(yy,getdate())+datename(qq,getdate()) --qq 是quatrer代表季度

SQL SERVER中常用日期函数的具体使用

5 datepart() 返回指定日期的日期部分的整数(返回整数)

?
1
select datepart(yy,getdate())

SQL SERVER中常用日期函数的具体使用

'+'是加符号

?
1
select datepart(yy,getdate())+datepart(qq,getdate())

SQL SERVER中常用日期函数的具体使用

6 day() 返回指定日期的日部分的整数

?
1
select day(getdate())

SQL SERVER中常用日期函数的具体使用

7 month() 返回指定日期的月部分的整数

?
1
select month(getdate())

SQL SERVER中常用日期函数的具体使用

8 year() 返回指定日期的年部分的整数

?
1
select year (getdate())

SQL SERVER中常用日期函数的具体使用

补充:

时间转换:

?
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

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
返回顶部