In SQL Server, il primo giorno della settimana è determinato dalle impostazioni della lingua correnti. Puoi anche sovrascriverlo con SET DATEFIRST istruzione, che consente di impostare in modo esplicito il primo giorno della settimana.
In entrambi i casi, puoi utilizzare il @@DATEFIRST funzione per scoprire quali impostazioni sta utilizzando la tua sessione per il primo giorno della settimana. Questo articolo mostra come.
Sintassi
La sintassi è semplice. Funziona così:
@@DATEFIRST
Esempio
Ecco un esempio di utilizzo.
SELECT @@DATEFIRST AS 'Result';
Risultato:
+----------+ | Result | |----------| | 7 | +----------+
Questo mi dice che il primo giorno della settimana è domenica. Lo so grazie alla tabella seguente.
Mappe per il primo giorno della settimana
La tabella seguente mostra come ogni valore viene mappato a un giorno della settimana.
| Valore | Il primo giorno della settimana è |
|---|---|
| 1 | lunedì |
| 2 | Martedì |
| 3 | Mercoledì |
| 4 | giovedì |
| 5 | venerdì |
| 6 | Sabato |
| 7 | Domenica |
Quindi il valore di ritorno di @@DATEFIRST sarà un tinyint tra 1 e 7 .
Questo valore è inizialmente determinato dalle impostazioni della lingua correnti, tuttavia, come accennato, puoi anche utilizzare SET DATEFIRST per sovrascrivere le impostazioni della lingua.
Per vedere cosa @@DATEFIRST le impostazioni vengono mappate a ciascuna lingua, ecco un Elenco di tutte le lingue e i formati di data associati in SQL Server 2017.
Puoi anche usare sp_helplanguage stored procedure per restituire tale elenco. A tale scopo, consulta Come trovare i formati di data utilizzati per una lingua specifica in SQL Server (T-SQL).