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