Compartir vía


EOMONTH (Transact-SQL)

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Esta función devuelve el último día del mes que contiene la fecha especificada, con un desplazamiento opcional.

Sugerencia

En SQL Server 2022 (16.x) y versiones posteriores, puede usar DATETRUNC para calcular el inicio del mes.

Convenciones de sintaxis de Transact-SQL

Sintaxis

EOMONTH ( start_date [ , month_to_add ] )

Argumentos

start_date

Expresión de fecha que especifica la fecha para la que se devuelve el último día del mes.

month_to_add

Expresión opcional de tipo entero que especifica el número de meses que se van a agregar a start_date.

Si el argumento, month_to_add tiene un valor, EOMONTH agrega el número especificado de meses a start_date y, después, devuelve el último día del mes de la fecha resultante. Si esta adición desborda el intervalo válido de fechas, EOMONTH genera un error.

Tipos de valores devueltos

date

Comentarios

La EOMONTH función puede remoto a instancias que ejecutan SQL Server 2012 (11.x) y versiones posteriores. No se puede remoto a instancias con una versión anterior a SQL Server 2012 (11.x).

Ejemplos

A. EOMONTH con un tipo datetime explícito

DECLARE @date DATETIME = '12/1/2024';

SELECT EOMONTH(@date) AS Result;
GO

Este es el conjunto de resultados.

Result
------------
2024-12-31

B. EOMONTH con parámetro de cadena y conversión implícita

DECLARE @date VARCHAR(255) = '12/1/2024';

SELECT EOMONTH(@date) AS Result;
GO

Este es el conjunto de resultados.

Result
------------
2024-12-31

C. EOMONTH con y sin el parámetro month_to_add

Los valores que se muestran en estos conjuntos de resultados reflejan una fecha de ejecución entre 12/01/2024 y 12/31/2024, ambos incluidos.

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

Este es el conjunto de resultados.

This Month
-----------------------
2024-12-31

Next Month
-----------------------
2025-01-31

Last Month
-----------------------
2024-11-30