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

SI APPLICA A: sìSQL Server sìDatabase SQL di Azure sìAzure SQL Data Warehouse sìParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Imposta il primo giorno della settimana su un numero compreso tra 1 e 7.Sets the first day of the week to a number from 1 through 7.

Per una panoramica di tutti i tipi di dati e delle funzioni di data e ora Transact-SQLTransact-SQL, vedere Funzioni e tipi di dati di data e ora (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).

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintassiSyntax

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

ArgomentiArguments

number | @ number_varnumber | @number_var
Valore intero che indica il primo giorno della settimana.Is an integer that indicates the first day of the week. Può essere uno dei valori seguenti.It can be one of the following values.

valoreValue Primo giorno della settimanaFirst day of the week is
11 LunedìMonday
22 MartedìTuesday
33 MercoledìWednesday
44 GiovedìThursday
55 VenerdìFriday
66 SabatoSaturday
7 (impostazione predefinita, Stati Uniti Inglese)7 (default, U.S. English) DomenicaSunday

RemarksRemarks

Per visualizzare l'impostazione corrente di SET DATEFIRST, usare la funzione @@DATEFIRST.To see the current setting of SET DATEFIRST, use the @@DATEFIRST function.

L'opzione SET DATEFIRST viene impostata in fase di esecuzione, non in fase di analisi.The setting of SET DATEFIRST is set at execute or run time and not at parse time.

La specifica di SET DATEFIRST non influisce su DATEDIFF.Specifying SET DATEFIRST has no effect on DATEDIFF. In DATEDIFF viene utilizzata sempre la domenica come primo giorno della settimana per garantire che la funzione sia deterministica.DATEDIFF always uses Sunday as the first day of the week to ensure the function is deterministic.

AutorizzazioniPermissions

È richiesta l'appartenenza al ruolo public .Requires membership in the public role.

EsempiExamples

In questo esempio viene visualizzato il giorno della settimana in base a un valore di data e vengono illustrati gli effetti della modifica dell'opzione 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  

Vedere ancheSee Also

Istruzioni SET (Transact-SQL)SET Statements (Transact-SQL)