共用方式為


日期和時間函式

.NET Framework Data Provider for SQL Server (SqlClient) 提供日期和時間函式,以在輸入值上 System.DateTime 執行作業,並傳回 string、數值或 System.DateTime 值結果。 這些函式位於 SqlServer 命名空間中,您可以在使用 SqlClient 時使用。 提供者的命名空間屬性可讓 Entity Framework 探索此提供者用於特定建構的前置詞,例如類型和函式。 下表顯示 SqlClient 日期和時間函式。

功能 說明
DATEADD(datepart, number, date) 傳回新的 DateTime 值,這個值是以加入間隔至指定的日期為根據。

引數

datepart String:表示日期中要傳回新值的部分。

number:用來遞增 Int32Int64DecimalDoubledatepart 值。

date: 傳回DateTimeDateTimeOffsetTime,且有效位數 = [0-7],或以日期格式顯示的字元字串。

傳回值

具有有效位數 = [0-7] 的新 DateTimeDateTimeOffsetTime 值。

範例

SqlServer.DATEADD('day', 22, cast('6/9/2006' as DateTime))
DATEDIFF(datepart,startdate,enddate) 傳回在兩個指定日期之間跨越的日期和時間界限數目。

引數

datepart String:,表示要計算差異的日期部分。

startdate:計算的開始日期是傳回 DateTime、 或 DateTimeOffsetTime 值且有效位數 = [0-7] 的運算式,或是日期格式的字元字串。

enddate:計算的結束日期是指一個運算式,該運算式能傳回DateTimeDateTimeOffsetTime 值,精確度等於[0-7],或是日期格式的字元字串。

傳回值

一個Int32

範例

SqlServer.DATEDIFF('day', cast('6/9/2006' as DateTime),

cast('6/20/2006' as DateTime))
DATENAME(datepart, date) 傳回字串,表示指定日期的指定日期部分。

引數

datepart String:表示日期中要傳回新值的部分。

date:返回 DateTime,DateTimeOffsetTime 值的表達式,精度 = [0-7],或者是日期格式的字元字串。

傳回值

指定日期的特定部分的字元字串。

範例

SqlServer.DATENAME('year', cast('6/9/2006' as DateTime))
DATEPART(datepart, date) 傳回表示指定日期的指定日期部分的整數。

引數

datepart String:表示日期中要傳回新值的部分。

date:這是一個運算式,可以傳回有效位數為 [0-7] 的DateTime,DateTimeOffset,Time數值,或者是日期格式的字元字串。

傳回值

指定日期的指定日期部分,作為 Int32

範例

SqlServer.DATEPART('year', cast('6/9/2006' as DateTime))
DAY(date) 傳回指定日期的日期為整數。

引數

date:類型 DateTimeDateTimeOffset 精確度 = 0-7 的運算式。

傳回值

指定日期的日期為 Int32

範例

SqlServer.DAY(cast('6/9/2006' as DateTime))
GETDATE() 產生符合 SQL Server 日期時間值內部格式的目前日期和時間。

傳回值

目前的系統日期和時間作為 DateTime,精確程度達到小數點後 3 位。

範例

SqlServer.GETDATE()
GETUTCDATE() 以UTC (國際標準時間或格林威治平均時間) 格式產生日期時間值。

傳回值

DateTime 的數值以 UTC 格式顯示,精確到小數點後3位。

範例

SqlServer.GETUTCDATE()
MONTH(date) 以整數傳回指定日期的月份。

引數

date:類型 DateTimeDateTimeOffset 精確度 = 0-7 的運算式。

傳回值

指定日期的月份做為 Int32

範例

SqlServer.MONTH(cast('6/9/2006' as DateTime))
YEAR(date) 以整數傳回指定日期的年份。

引數

date:類型 DateTimeDateTimeOffset 精確度 = 0-7 的運算式。

傳回值

指定日期的年份被視為 Int32

範例

SqlServer.YEAR(cast('6/9/2006' as DateTime))
SYSDATETIME() DateTime 回有效位數為 7 的值。

傳回值

DateTime精度為 7 的值。

範例

SqlServer.SYSDATETIME()
SYSUTCDATE() 以UTC (國際標準時間或格林威治平均時間) 格式產生日期時間值。

傳回值

UTC 格式的值,精確度 = 7。

範例

SqlServer.SYSUTCDATE()
SYSDATETIMEOFFSET() 返回 DateTimeOffset,並且精確度為 7。

傳回值

UTC 格式的 DateTimeOffset 值,其有效位數為 7。

範例

SqlServer.SYSDATETIMEOFFSET()

如需 SqlClient 支援的日期和時間函式詳細資訊,請參閱日期和時間數據類型和函式 (Transact-SQL)。

另請參閱