日期和時間

在 SQL 中,你使用日期和時間資料型別來儲存日曆資訊。這些資料型別包括 time,date,smalldatetime,datetime,datetime2 和 datetimeoffset。每種資料型別都有特定的格式。

資料型別 格式
時間 HH:MM:SS [.nnnnnnn]
日期 YYYY-MM-DD
SMALLDATETIME YYYY-MM-DD hh:mm:ss
日期時間 YYYY-MM-DD hh:mm:ss [.nnn]
DATETIME2 YYYY-MM-DD hh:mm:ss [.nnnnnnn]
DATETIMEOFFSET YYYY-MM-DD hh:mm:ss [.nnnnnnn] [+/-] hh:mm

DATENAME 函式返回日期特定部分的名稱或值。

SELECT DATENAME (weekday,'2017-01-14') as Datename
DATENAME
星期六

你可以使用 GETDATE 函式來確定執行當前 SQL 例項的計算機的當前日期和時間。此功能不包括時區差異。

SELECT GETDATE() as Systemdate 
Systemdate
2017-01-14 11:11:47.7230728

DATEDIFF 函式返回兩個日期之間的差異。

在語法中,datepart 是指定要用於計算差異的日期部分的引數。datepart 可以是年,月,周,日,小時,分鐘,秒或毫秒。然後,在 startdate 引數中指定開始日期,在 enddate 引數中指定要查詢其差異的結束日期。

SELECT SalesOrderID, DATEDIFF(day, OrderDate, ShipDate) 
AS 'Processing time'
FROM Sales.SalesOrderHeader
SalesOrderID 處理時間
43659 7
43660 7
43661 7
43662 7

DATEADD 功能使你可以將間隔新增到特定日期的一部分。

SELECT DATEADD (day, 20, '2017-01-14') AS Added20MoreDays
Added20MoreDays
2017-02-03 00:00:00.000