Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

@@DATEFIRST – Holen Sie sich den ersten Tag der Woche in SQL Server

In SQL Server wird der erste Tag der Woche durch die aktuellen Spracheinstellungen bestimmt. Sie können dies auch mit SET DATEFIRST überschreiben -Anweisung, mit der Sie den ersten Tag der Woche explizit festlegen können.

In beiden Fällen können Sie den @@DATEFIRST verwenden Funktion, um herauszufinden, welche Einstellungen Ihre Sitzung für den ersten Tag der Woche verwendet. Dieser Artikel zeigt, wie.

Syntax

Die Syntax ist einfach. Das geht so:

@@DATEFIRST

Beispiel

Hier ist ein Anwendungsbeispiel.

SELECT @@DATEFIRST AS 'Result';

Ergebnis:

+----------+
| Result   |
|----------|
| 7        |
+----------+

Dies sagt mir, dass der erste Tag der Woche Sonntag ist. Ich weiß das aufgrund der folgenden Tabelle.

Mappings für den ersten Tag der Woche

Die folgende Tabelle zeigt, wie jeder Wert einem Wochentag zugeordnet wird.

Wert Erster Wochentag ist
1 Montag
2 Dienstag
3 Mittwoch
4 Donnerstag
5 Freitag
6 Samstag
7 Sonntag

Also der Rückgabewert von @@DATEFIRST wird ein tinyint sein zwischen 1 und 7 .

Dieser Wert wird anfänglich von den aktuellen Spracheinstellungen bestimmt, aber wie erwähnt, können Sie auch SET DATEFIRST verwenden um die Spracheinstellungen zu überschreiben.

Um zu sehen, was @@DATEFIRST Einstellungen jeder Sprache zugeordnet sind, finden Sie hier eine Liste aller Sprachen und zugehörigen Datumsformate in SQL Server 2017.

Sie können auch die sp_helplanguage verwenden gespeicherte Prozedur, um diese Liste zurückzugeben. Siehe dazu So finden Sie die Datumsformate, die für eine bestimmte Sprache in SQL Server (T-SQL) verwendet werden.