CURRENT_DATE (Transact-SQL)

适用于: Azure SQL 数据库 Azure SQL 托管实例

在Azure SQL 数据库和Azure SQL 托管实例中,此函数将当前数据库系统日期作为日期值返回,而不返回数据库时间和时区偏移量。 CURRENT_DATE从数据库引擎运行的基础操作系统派生此值。

注意

SYSDATETIMESYSUTCDATE 采用秒的小数部分精度度量,因此其精度比 GETDATEGETUTCDATE 的精度更高。 SYSDATETIMEOFFSET 函数包含系统时区偏移量。 可向任意日期和时间类型的变量分配 SYSDATETIMESYSUTCDATETIMESYSDATETIMEOFFSET

此函数是 ANSI SQL 等效项 CAST(GETDATE() AS DATE)。 有关详细信息,请参阅 GETDATE

有关所有 Transact-SQL 日期和时间数据类型和函数的概述,请参阅 日期和时间数据类型和函数

Transact-SQL 语法约定

语法

仅Azure SQL 数据库和Azure SQL 托管实例:

CURRENT_DATE

参数

此函数没有参数。

返回类型

date

注解

Transact-SQL 语句可以引用它们可引用CURRENT_DATE日期表达式的任何位置。

CURRENT_DATE 是非确定性的函数。 无法为引用此列的视图和表达式编制索引。

示例

这些示例使用返回当前日期和时间值的系统函数返回日期、时间或两者。 这些示例连续返回值,因此,它们的秒小数部分可能有所不同。 返回的实际值反映实际执行日期/时间。

A. 获取当前系统日期和时间

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

注意

CURRENT_DATE(Transact-SQL)仅在Azure SQL 数据库和Azure SQL 托管实例中可用。

结果集如下。

Data type
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;

注意

CURRENT_DATE(Transact-SQL)仅在Azure SQL 数据库和Azure SQL 托管实例中可用。

结果集如下。

Data type
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