SQL SERVER日期函數

1. 日期函數

https://www.cnblogs.com/kissdodog/p/3141218.html

1)當前日期

Select Getdate()

2) 當前UTC時間

Select GetUTCDate()

3) 獲取當前日期的年、月、日及其任意部分

Select Year/Month/Day(GetDate())

Select Datepart(YYMM, date類型的字段)

4)日期-加 DATEADD

Select Dateadd(yyyy,10,getdate())? ?【datepart,數字(可以是負整數),日期格式的字段】

5)日期差 -減 DATEDIFF

Select Datediff(yyyy, '2019-1-1', '2020-12-31')? 【detepart, 開始日期,結束日期】

6)判斷是否是日期值

Select ISDATE('2020-1-1')


2. 日期轉換函數

https://www.cnblogs.com/mslong/p/13790271.html

https://blog.csdn.net/findmyself_for_world/article/details/50730317

1)Convert

Convert(nvarchar(100), getdate(), 112) 【長度,原來的日期列,轉換后的類型】

(112:20200929; 111:?2020/09/29; 120:2011-03-15 10:55:57

2) Format

Format(getdate(), 'yyyy-MM-dd')? ?【原日期列,轉換后的日期格式】

3)截取日期

第一部分的Year month day datepart

4)周相關

獲取本周一

Select DATEADD(WK, DATEDIFF(WK, 0, GETDATE()), 0) as "星期一“

獲取本周二

SELECT DATEADD(WK, DATEDIFF(WK,0,GETDATE()), 1) AS "星期二"

獲取本周天

Select DATEADD(WK, DATEDIFF(WK, 0, GETDATE()), 6) as "星期日“

5)月相關

獲取本月最后一天

SELECT EOMONTH(GETDATE(),0)

獲取下個月最后一天

SELECT EOMONTH(GETDATE(),1)

獲取上個月最后一天

SELECT EOMONTH(GETDATE().-1)

獲取本月第一天

SELECT DATEADD(DAY,1,EOMONTH(GETDATE().-1))

/* 另一種寫法*/

SELECT DATEADD(MM, DATEDIFF(MM, 0, GETDATE()), 0) AS "本月第一天"

// 意思是:①獲取當前日期 ②求當前日期與0(1900-1-1 0:00:00)的月份差 ③求0往上加這些月份。=> 本月第一天

SELECT DATEADD(MS, -3, DATEADD(MM, DATEDIFF(MM, 0, GETDATE()), 0) ) AS "上月最后一天"

//sql server時間精確到3毫秒,所以第一天-3ms = 昨天

6)季/年相

本季度第一天

SELECT DATEADD(QQ, DATEDIFF(QQ, 0, GETDATE()),0)

本季度最后一天

SELECT DATEADD(MS, -3, DATEADD(QQ,DATEDIFF(QQ, 0, GETDATE())+1,0))

上季度第一天

SELECT DATEADD(QQ, DATEDIFF(QQ,0,GETDATE()-1),0)

本年第一天

SELECT DATEADD(YY, DATEDIFF(YY,0,GETDATE()),0)

//用固定日期格式

SELECT CONVERT(NVARCHAR(100),?DATEADD(YY, DATEDIFF(YY,0,GETDATE()),0), 112)

SELECT FORMAT(DATEADD(YY, DATEDIFF(YY,0,GETDATE()),0), 'yyyy-MM-dd')

本年最后一天

SELECT DATEADD(MS, -3, DATEADD(YY, DATEDIFF(YY, 0, GETDATE()+1),0)) AS "最后一天"

SELECT CONVERT(NVARCHAR(100), DATEADD(MS, -3, DATEADD(YY, DATEDIFF(YY, 0, GETDATE()+1),0)) , 112) AS "最后一天"

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容