EOMONTH (Transact-SQL)

Devuelve el último día del mes que contiene la fecha especificada, con un desplazamiento opcional.

Icono de vínculo a temas Convenciones de sintaxis de Transact-SQL

Se aplica a: SQL Server (SQL Server 2012 a versión actual), Windows Azure SQL Database (Versión inicial a versión actual).

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 va a agregar a start_date.

    Si se especifica este argumento, EOMONTH agrega el número especificado de meses a start_date y, a continuación, devuelve el último día del mes de la fecha resultante. Si esto desborda el intervalo válido de fechas, se producirá un error.

Tipo de valor devuelto

date

Comentarios

Esta función se puede enviar de forma remota a servidores SQL Server 2012 y posteriores. No se puede enviar de forma remota a servidores con una versión inferior a SQL Server 2012.

Ejemplos

A.EOMONTH con un tipo datetime explícito

DECLARE @date DATETIME = '12/1/2011';
SELECT EOMONTH ( @date ) AS Result;
GO

El conjunto de resultados es el siguiente.

Result
------------
2011-12-31

(1 row(s) affected)

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

DECLARE @date VARCHAR(255) = '12/1/2011';
SELECT EOMONTH ( @date ) AS Result;
GO

El conjunto de resultados es el siguiente.

Result
------------
2011-12-31

(1 row(s) affected)

C.EOMONTH con y sin el parámetro month_to_add

DECLARE @date DATETIME = GETDATE();
SELECT EOMONTH ( @date ) AS 'This Month';
SELECT EOMONTH ( @date, 1 ) AS 'Next Month';
SELECT EOMONTH ( @date, -1 ) AS 'Last Month';
GO

El conjunto de resultados es el siguiente.

This Month
-----------------------
2011-12-31

(1 row(s) affected)

Next Month
-----------------------
2012-01-31

(1 row(s) affected)

Last Month
-----------------------
2011-11-30

(1 row(s) affected)