SQL SERVER: ÚLTIMO DÍA DEL MES

CÓMO OBTENER EL ÚLTIMO DÍA DEL MES EN SQL SERVER
En muchas ocasiones necesitamos conocer el último día de un determinado mes, en SQL Server desde la versión 2012 contamos con la función EOMONTH, pero en versiones anteriores debemos utilizar algún artificio.
SQL Server 2012 o superior
Desde la versión 2012 podemos utilizar la función EOMONTH.
Por ejemplo, la siguiente consulta permite averiguar el último día del mes de febrero para el año 2018 y 2020.
select EOMONTH ( '20180201' ) "2018", EOMONTH ( '20200201' ) "2020";
GO
El resultado es el siguiente:
2018            2020
--------------- ------------
2018-02-28      2020-02-29
El parámetro que recibe es una fecha del mes a evaluar.
CÓDIGO FUENTE - EUREKA-WEB-ORACLE-JDBC
En esta oportunidad te presento un video donde te explico cómo ejecutar el código fuente de una aplicación Java Web, utilizando HTML, CSS, JavaScript, AJAX y JSON, en la capa de persistencia se utiliza JDBC y base de datos Oracle XE 11g.
Tú tienes acceso al código fuente de esta aplicación, después del video esta el enlace.
SQL Server 2008
Si tienes la versión 2008, debes crear tu propia función.
En esta oportunidad te presento una función que podrías probar para obtener el mismo resultado que la función EOMONTH.
CREATE FUNCTION [dbo].[fn_LastDayMonth] ( @paramDate DATETIME )
RETURNS DATETIME
BEGIN

  declare @resultDate  datetime
  declare @textDate    varchar(15)
  declare @vYear       int
  declare @vMont       int

  set @vYear = YEAR( @paramDate )
  set @vMont = MONTH( @paramDate )

  set @textDate = CAST(@vYear as varchar) + '/' + CAST(@vMont as varchar) + '/' + '1'

  set @resultDate = CONVERT( datetime, @textDate, 111 )

  set @resultDate = DATEADD( month, 1, @resultDate )
    
  set @resultDate = DATEADD( day, -1, @resultDate )

  RETURN @resultDate

END
GO
Para verificar la función, se ha realizado la misma prueba que en el caso anterior.
select 
  dbo.fn_LastDayMonth( '20180215' ) "2018", 
  dbo.fn_LastDayMonth( '20200215' ) "2020"
GO
A continuación tienes el resultado.
2018                      2020
-----------------------   -----------------------
2018-02-28 00:00:00.000   2020-02-29 00:00:00.000
CÓDIGO FUENTE - EUREKA-WEB-MYSQL-SPRING
En esta sección te presento un video de una aplicación web desarrollada SPRING FRAMEWORK y MYSQL.
Tú tienes acceso al código fuente de esta aplicación, después del video tienes el enlace.



No hay comentarios:

Publicar un comentario