Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
database SQL di Azure
Istanza gestita di SQL di Azure
Azure Synapse Analytics
Sistema di Piattaforma Analitica (PDW)
Database SQL in Microsoft Fabric
Imposta il primo giorno della settimana su un numero compreso tra 1 e 7.
Per una panoramica di tutte le funzioni e i tipi di dati di data e ora Transact-SQL, vedere Funzioni e tipi di dati di data e ora (Transact-SQL).
Convenzioni relative alla sintassi Transact-SQL
Sintassi
Sintassi per SQL Server e per il database SQL di Azure
SET DATEFIRST { number | @number_var }
Sintassi per Azure Synapse Analytics e Parallel Data Warehouse
SET DATEFIRST 7 ;
Argomenti
numero | @number_var
Valore intero che indica il primo giorno della settimana. Può essere uno dei valori seguenti.
| Valore | Primo giorno della settimana |
|---|---|
1 |
lunedì |
2 |
Martedì |
3 |
mercoledì |
4 |
giovedì |
5 |
Venerdì |
6 |
Sabato |
7 (impostazione predefinita, inglese statunitense) |
Domenica |
Osservazioni:
Per vedere l'impostazione attuale di SET DATEFIRST, usa la funzione @@DATEFIRST .
L'impostazione di viene impostata in fase di SET DATEFIRST esecuzione o in fase di esecuzione e non in fase di analisi.
Specificare SET DATEFIRST non ha effetto su DATEDIFF. In DATEDIFF viene utilizzata sempre la domenica come primo giorno della settimana per garantire che la funzione sia deterministica.
Come tutte SET le Dichiarazioni, SET DATEFIRST influisce sulla sessione corrente.
Autorizzazioni
È richiesta l'appartenenza al ruolo public .
Esempi
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.
-- 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