Dans SQL Server, le premier jour de la semaine est déterminé par les paramètres de langue actuels. Vous pouvez également remplacer cela avec le SET DATEFIRST
déclaration, qui vous permet de définir explicitement le premier jour de la semaine.
Dans les deux cas, vous pouvez utiliser le @@DATEFIRST
fonction pour savoir quels paramètres votre session utilise pour le premier jour de la semaine. Cet article montre comment.
Syntaxe
La syntaxe est simple. Ça se passe comme ça :
@@DATEFIRST
Exemple
Voici un exemple d'utilisation.
SELECT @@DATEFIRST AS 'Result';
Résultat :
+----------+ | Result | |----------| | 7 | +----------+
Cela m'indique que le premier jour de la semaine est le dimanche. Je le sais grâce au tableau suivant.
Mappages pour le premier jour de la semaine
Le tableau suivant montre comment chaque valeur est mappée à un jour de la semaine.
Valeur | Le premier jour de la semaine est |
---|---|
1 | Lundi |
2 | mardi |
3 | Mercredi |
4 | jeudi |
5 | vendredi |
6 | Samedi |
7 | dimanche |
Donc la valeur de retour de @@DATEFIRST
sera un tinyint entre 1 et 7 .
Cette valeur est initialement déterminée par les paramètres de langue actuels, mais comme mentionné, vous pouvez également utiliser SET DATEFIRST
pour remplacer les paramètres de langue.
Pour voir ce que @@DATEFIRST
les paramètres correspondent à chaque langue, voici une liste de toutes les langues et des formats de date associés dans SQL Server 2017.
Vous pouvez également utiliser le sp_helplanguage
procédure stockée pour renvoyer cette liste. Pour ce faire, consultez Comment trouver les formats de date utilisés pour une langue spécifique dans SQL Server (T-SQL).