CURRENT_DATE (Transact-SQL)

S’applique à : Base de données SQL Server 2025 (17.x) Azure SQL DatabaseAzure SQL Managed InstanceSQL dans Microsoft Fabric

La CURRENT_DATE fonction Transact-SQL (T-SQL) renvoie la date actuelle du système de base de données comme une valeur de date , sans le décalage d’heure et de fuseau horaire de la base de données. CURRENT_DATEcette valeur dérive du système d’exploitation sous-jacent sur lequel le Moteur de base de données fonctionne.

Remarque

Les fonctions SYSDATETIME et SYSUTCDATE s’avèrent plus précises que GETDATE et GETUTCDATE dans le sens où elles offrent une précision de l’ordre de la fraction de seconde. La fonction SYSDATETIMEOFFSET inclut le décalage du fuseau horaire système. Vous pouvez affecter SYSDATETIME, SYSUTCDATETIME, et SYSDATETIMEOFFSET à une variable de n’importe quel type de date et d’heure.

Cette fonction est l’équivalent ANSI SQL de CAST(GETDATE() AS DATE). Pour plus d’informations, consultez GETDATE.

Remarque

Azure SQL Database et SQL Database dans Microsoft Fabric permettent de changer le fuseau horaire par défaut à partir de l’heure universelle coordonnée (UTC). Si vous modifiez le fuseau horaire au niveau de la base de données ou de la session , cette fonction retourne l’heure locale basée sur la valeur du fuseau horaire configuré. Pour plus d’informations, voir ALTER DATABASE SCOPED CONFIGURATIONFUSEAUSET HORAIRE.

Consultez les types et fonctions de données date et heure pour obtenir une vue d’ensemble de tous les types et fonctions de données de date et d’heure Transact-SQL.

Conventions de la syntaxe Transact-SQL

Syntaxe

CURRENT_DATE

Arguments

Cette fonction ne prend pas d'arguments.

Types de retour

date

Notes

Les instructions Transact-SQL peuvent faire référence à CURRENT_DATE n’importe où elles peuvent faire référence à une expression de date .

CURRENT_DATE est une fonction non déterministe. Les vues et les expressions qui référencent cette colonne ne peuvent pas être indexées.

Exemples

Ces exemples utilisent les fonctions système qui retournent les valeurs de date et d’heure actuelles, pour retourner la date, l’heure ou les deux. Comme les exemples retournent les valeurs en série, leurs fractions de seconde peuvent être différentes. Les valeurs réelles retournées reflètent le jour réel/heure d’exécution.

R : Obtention des date et heure système actuelles

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

Voici le jeu de résultats.

SYSDATETIME()        2026-09-01 16:15:37.7418724
SYSDATETIMEOFFSET()  2026-09-01 16:15:37.7418724 -06:00
SYSUTCDATETIME()     2026-09-01 22:15:37.7418724
CURRENT_TIMESTAMP    2026-09-01 16:15:37.740
GETDATE()            2026-09-01 16:15:37.740
GETUTCDATE()         2026-09-01 22:15:37.740
CURRENT_DATE         2026-09-01

B. Obtention de la date système actuelle

L’exemple suivant montre comment convertir des valeurs de date et d’heure en type de données date .

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

Voici le jeu de résultats.

SYSDATETIME()        2026-09-01
SYSDATETIMEOFFSET()  2026-09-01
SYSUTCDATETIME()     2026-09-01
CURRENT_TIMESTAMP    2026-09-01
GETDATE()            2026-09-01
GETUTCDATE()         2026-09-01
CURRENT_DATE         2026-09-01