共用方式為


CURRENT_DATE (Transact-SQL)

適用於: SQL Server 2025 (17.x) Azure SQL Database AzureSQL Managed InstanceSQL database in Microsoft Fabric

此函數會傳回目前的資料庫系統日期作為 日期 值,而不使用資料庫時間和時區位移。 CURRENT_DATE從執行 資料庫引擎 的基礎操作系統衍生這個值。

注意

SYSDATETIMESYSUTCDATEGETDATEGETUTCDATE 具有更高的精確度,以小數秒數有效位數來度量。 SYSDATETIMEOFFSET 函式包含系統時區位移。 您可以將 SYSDATETIMESYSUTCDATETIMESYSDATETIMEOFFSET 指派給任何日期和時間類型的變數。

此函式是相當於的 ANSI SQL CAST(GETDATE() AS DATE)。 如需詳細資訊,請參閱 GETDATE

如需所有 Transact-SQL 日期和時間數據類型和函式的概觀,請參閱 日期和時間 數據類型和函式。

Transact-SQL 語法慣例

Syntax

CURRENT_DATE

引數

這個函數沒有引數。

傳回類型

date

備註

Transact-SQL 語句可以參考 CURRENT_DATE 任何可以參考 日期 表達式的地方。

CURRENT_DATE 是非決定性函數。 參考此數據行的檢視和表達式無法編製索引。

範例

這些範例會使用傳回目前日期和時間值的系統函式來傳回日期、時間或兩者。 由於這些範例會依序傳回值,因此其小數秒數可能會不同。 傳回的實際值會反映實際執行日期/時間。

A. 取得目前的系統日期和時間

SELECT SYSDATETIME(),
       SYSDATETIMEOFFSET(),
       SYSUTCDATETIME(),
       CURRENT_TIMESTAMP,
       GETDATE(),
       GETUTCDATE(),
       CURRENT_DATE;

結果集如下所示。

數據類型
SYSDATETIME() 2024-06-26 14:04:21.6172014
SYSDATETIMEOFFSET() 2024-06-26 14:04:21.6172014 -05:00
SYSUTCDATETIME() 2024-06-26 19:04:21.6172014
CURRENT_TIMESTAMP 2024-06-26 14:04:21.617
GETDATE() 2024-06-26 14:04:21.617
GETUTCDATE() 2024-06-26 19:04:21.617
CURRENT_DATE 2024-06-26

B. 取得目前的系統日期

SELECT CONVERT (DATE, SYSDATETIME()),
       CONVERT (DATE, SYSDATETIMEOFFSET()),
       CONVERT (DATE, SYSUTCDATETIME()),
       CONVERT (DATE, CURRENT_TIMESTAMP),
       CONVERT (DATE, GETDATE()),
       CONVERT (DATE, GETUTCDATE()),
       CURRENT_DATE;

結果集如下所示。

數據類型
SYSDATETIME() 2024-06-26
SYSDATETIMEOFFSET() 2024-06-26
SYSUTCDATETIME() 2024-06-26
CURRENT_TIMESTAMP 2024-06-26
GETDATE() 2024-06-26
GETUTCDATE() 2024-06-26
CURRENT_DATE 2024-06-26