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
Base de Dados SQL do Azure
Azure SQL Managed Instance
Azure Synapse Analytics
Endpoint de análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de dados SQL no Microsoft Fabric
Esta função devolve o último dia do mês contendo uma data especificada, com um deslocamento opcional.
Sugestão
No SQL Server 2022 (16.x) e versões posteriores, pode usar o DATETRUNC para calcular o início do mês.
Transact-SQL convenções de sintaxe
Sintaxe
EOMONTH ( start_date [ , month_to_add ] )
Arguments
start_date
Uma expressão de data que especifica a data para a qual se deve devolver o último dia do mês.
month_to_add
Uma expressão inteira opcional que especifica o número de meses a adicionar a start_date.
Se o argumento month_to_add tiver um valor, então EOMONTH soma o número de meses especificado à start_date e depois devolve o último dia do mês para a data resultante. Se esta adição ultrapassar o intervalo válido de datas, gera EOMONTH um erro.
Tipos de devolução
date
Observações
A EOMONTH função pode aceder remotamente a instâncias a correr SQL Server 2012 (11.x) e versões posteriores. Não pode fazer remotamente ligação remota a instâncias com uma versão anterior ao SQL Server 2012 (11.x).
Examples
A. EOMONTH com tipo explícito de data-hora
DECLARE @date DATETIME = '12/1/2024';
SELECT EOMONTH(@date) AS Result;
GO
Aqui está o conjunto de resultados.
Result
------------
2024-12-31
B. EOMONTH com parâmetro de cadeia e conversão implícita
DECLARE @date VARCHAR(255) = '12/1/2024';
SELECT EOMONTH(@date) AS Result;
GO
Aqui está o conjunto de resultados.
Result
------------
2024-12-31
C. EOMONTH com e sem o parâmetro month_to_add
Os valores apresentados nestes conjuntos de resultados refletem uma data de execução entre e incluindo 12/01/2024 e 12/31/2024.
DECLARE @date DATETIME = '2024-12-31';
SELECT EOMONTH(@date) AS 'This Month';
SELECT EOMONTH(@date, 1) AS 'Next Month';
SELECT EOMONTH(@date, -1) AS 'Last Month';
GO
Aqui está o conjunto de resultados.
This Month
-----------------------
2024-12-31
Next Month
-----------------------
2025-01-31
Last Month
-----------------------
2024-11-30