No SQL Server, o primeiro dia da semana é determinado pelas configurações de idioma atuais. Você também pode substituir isso com o
SET DATEFIRST instrução, que permite definir explicitamente o primeiro dia da semana. Em ambos os casos, você pode usar o
@@DATEFIRST função para descobrir quais configurações sua sessão está usando para o primeiro dia da semana. Este artigo demonstra como. Sintaxe
A sintaxe é simples. Fica assim:
@@DATEFIRST
Exemplo
Aqui está um exemplo de uso.
SELECT @@DATEFIRST AS 'Result';
Resultado:
+----------+ | Result | |----------| | 7 | +----------+
Isso me diz que o primeiro dia da semana é domingo. Eu sei disso por causa da tabela a seguir.
Mapeamentos para o primeiro dia da semana
A tabela a seguir mostra como cada valor é mapeado para um dia da semana.
| Valor | O primeiro dia da semana é |
|---|---|
| 1 | Segunda-feira |
| 2 | terça-feira |
| 3 | Quarta-feira |
| 4 | quinta-feira |
| 5 | Sexta-feira |
| 6 | Sábado |
| 7 | Domingo |
Portanto, o valor de retorno de
@@DATEFIRST será um tinyint entre 1 e 7 . Este valor é determinado inicialmente pelas configurações de idioma atuais, no entanto, como mencionado, você também pode usar
SET DATEFIRST para substituir as configurações de idioma. Para ver o que
@@DATEFIRST configurações mapeiam para cada idioma, aqui está uma lista de todos os idiomas e formatos de data associados no SQL Server 2017. Você também pode usar o
sp_helplanguage procedimento armazenado para retornar essa lista. Para fazer isso, consulte Como encontrar os formatos de data usados para um idioma específico no SQL Server (T-SQL).