Udostępnij za pośrednictwem


SET DATEFIRST (Transact-SQL)

Ustawia pierwszy dzień tygodnia jako liczbę z zakresu od 1 do 7.

Aby zapoznać się z omówieniem wszystkich Transact-SQL Data i czas typów danych i funkcji, zobacz Data i godzina, Data typy i funkcje (języka Transact-SQL). Aby uzyskać informacje i przykłady, które są wspólne dla data i czas typów danych i funkcji zobacz Using Date and Time Data.

Topic link iconKonwencje składni języka Transact-SQL

SET DATEFIRST { number | @number_var } 

Argumenty

  • number | **@**number_var
    Liczba całkowita wskazująca pierwszy dzień tygodnia.Może być jedną z następujących wartości:

    Wartość

    Pierwszy dzień tygodnia to

    1

    Poniedziałek

    2

    Wtorek

    3

    Środa

    4

    Czwartek

    5

    Piątek

    6

    Sobota

    7 (wartość domyślna,angielski — USA)

    Niedziela

Remarks

Aby sprawdzić bieżące ustawienie DATEFIRST, należy użyć funkcji @@DATEFIRST.

Wartość DATEFIRST jest ustawiana w czasie wykonywania, a nie w czasie analizy.

Uprawnienia

Członkostwo w grupie wymaga publiczne roli.

Przykłady

Poniższy przykład wyświetla dzień tygodnia dla wartości data i pokazuje skutki zmian DATEFIRST ustawienie.

-- 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

See Also

Reference