Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Base de dados SQL no Microsoft Fabric
Define o primeiro dia da semana para um número de 1 a 7.
Para obter uma visão geral de todos os tipos e funções de dados de data e hora Transact-SQL, consulte Tipos de dados e funções de data e hora (Transact-SQL).
Transact-SQL convenções de sintaxe
Sintaxe
Sintaxe do SQL Server e do Banco de Dados SQL do Azure
SET DATEFIRST { number | @number_var }
Sintaxe para o Azure Synapse Analytics e o Parallel Data Warehouse
SET DATEFIRST 7 ;
Arguments
número | @number_var
É um número inteiro que indica o primeiro dia da semana. Pode ser um dos seguintes valores.
| 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 (padrão, inglês dos EUA) |
Domingo |
Observações
Para ver a configuração atual de SET DATEFIRST, use a função @@DATEFIRST .
A configuração de SET DATEFIRST é definida em tempo de execução ou execução e não em tempo de análise.
Especificar SET DATEFIRST não tem efeito em DATEDIFF. DATEDIFF sempre usa o domingo como o primeiro dia da semana para garantir que a função seja determinística.
Como todas as instruções SET, SET DATEFIRST afeta a sessão atual.
Permissions
Requer a participação na função pública.
Examples
O exemplo a seguir exibe o dia da semana para um valor de data e mostra os efeitos da alteração da DATEFIRST configuração.
-- 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