SET DATEFIRST (Transact-SQL)SET DATEFIRST (Transact-SQL)

CETTE RUBRIQUE S’APPLIQUE À : ouiSQL Server (à partir de la version 2008)ouiAzure SQL DatabaseouiAzure SQL Data Warehouse ouiParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008)yesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

Affecte au premier jour de la semaine un nombre allant de 1 à 7.Sets the first day of the week to a number from 1 through 7.

Pour obtenir une vue d’ensemble de tous les types de données et fonctions de date et d’heure Transact-SQLTransact-SQL, consultez Types de données et fonctions de date et d’heure (Transact-SQL).For an overview of all Transact-SQLTransact-SQL date and time data types and functions, see Date and Time Data Types and Functions (Transact-SQL).

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

-- Syntax for SQL Server and Azure SQL Database  

SET DATEFIRST { number | @number_var }   
-- Syntax for Azure SQL Data Warehouse and Parallel Data Warehouse  

SET DATEFIRST 7 ;  

ArgumentsArguments

number | @number_varnumber | @number_var
Nombre entier indiquant le premier jour de la semaine.Is an integer that indicates the first day of the week. Il peut avoir l’une des valeurs suivantes.It can be one of the following values.

ValeurValue Le premier jour de la semaine estFirst day of the week is
11 LundiMonday
22 MardiTuesday
33 MercrediWednesday
44 JeudiThursday
55 VendrediFriday
66 SamediSaturday
7 (valeur par défaut, anglais des États-Unis)7 (default, U.S. English) DimancheSunday

Notes Remarks

Pour afficher la valeur actuelle de SET DATEFIRST, utilisez la fonction @@DATEFIRST.To see the current setting of SET DATEFIRST, use the @@DATEFIRST function.

L'option SET DATEFIRST est définie lors de l'exécution, et non pas durant l'analyse.The setting of SET DATEFIRST is set at execute or run time and not at parse time.

La spécification SET DATEFIRST n'a aucun effet sur DATEDIFF.Specifying SET DATEFIRST has no effect on DATEDIFF. DATEDIFF utilise toujours Dimanche comme le premier jour de la semaine pour que la fonction soit déterministe.DATEDIFF always uses Sunday as the first day of the week to ensure the function is deterministic.

PermissionsPermissions

Nécessite l'appartenance au rôle public .Requires membership in the public role.

ExemplesExamples

L'exemple suivant affiche le jour de la semaine pour une valeur date et ainsi que les effets de la modification du paramètre DATEFIRST.The following example displays the day of the week for a date value and shows the effects of changing the DATEFIRST setting.

-- SET DATEFIRST to U.S. English default value of 7.  
SET DATEFIRST 7;  

SELECT CAST('1999-1-1' AS datetime2) AS SelectDate  
    ,DATEPART(dw, '1999-1-1') AS DayOfWeek;  
-- January 1, 1999 is a Friday. Because the U.S. English default   
-- specifies Sunday as the first day of the week, DATEPART of 1999-1-1  
-- (Friday) yields a value of 6, because Friday is the sixth day of the   
-- week when you start with Sunday as day 1.  

SET DATEFIRST 3;  
-- Because Wednesday is now considered the first day of the week,  
-- DATEPART now shows that 1999-1-1 (a Friday) is the third day of the   
-- week. The following DATEPART function should return a value of 3.  
SELECT CAST('1999-1-1' AS datetime2) AS SelectDate  
    ,DATEPART(dw, '1999-1-1') AS DayOfWeek;  
GO  

Voir aussiSee Also

Instructions SET (Transact-SQL)SET Statements (Transact-SQL)