W SQL Server pierwszy dzień tygodnia jest określany przez bieżące ustawienia języka. Możesz to również zmienić za pomocą SET DATEFIRST
oświadczenie, które pozwala jednoznacznie ustawić pierwszy dzień tygodnia.
W obu przypadkach możesz użyć @@DATEFIRST
funkcja, aby dowiedzieć się, jakich ustawień używa Twoja sesja w pierwszym dniu tygodnia. Ten artykuł pokazuje, jak to zrobić.
Składnia
Składnia jest prosta. To wygląda tak:
@@DATEFIRST
Przykład
Oto przykład użycia.
SELECT @@DATEFIRST AS 'Result';
Wynik:
+----------+ | Result | |----------| | 7 | +----------+
To mówi mi, że pierwszym dniem tygodnia jest niedziela. Wiem to dzięki poniższej tabeli.
Mapy na pierwszy dzień tygodnia
Poniższa tabela pokazuje, jak każda wartość jest przypisana do dnia tygodnia.
Wartość | Pierwszy dzień tygodnia to |
---|---|
1 | Poniedziałek |
2 | Wtorek |
3 | środa |
4 | Czwartek |
5 | Piątek |
6 | Sobota |
7 | Niedziela |
Więc zwracana wartość @@DATEFIRST
będzie maleńki między 1 i 7 .
Ta wartość jest początkowo określana przez bieżące ustawienia języka, jednak jak wspomniano, możesz również użyć SET DATEFIRST
aby zastąpić ustawienia języka.
Aby zobaczyć, co @@DATEFIRST
ustawienia mapowane na każdy język, oto lista wszystkich języków i powiązanych formatów dat w SQL Server 2017.
Możesz także użyć sp_helplanguage
procedura składowana, aby zwrócić tę listę. Aby to zrobić, zobacz Jak znaleźć formaty dat używane dla określonego języka w SQL Server (T-SQL).