Repositorio sentencias SQL

Repositorio de sentencias útiles para Microsoft SQL Server con la finalidad de tener un repositorio de referencia.

 

 

Sentencias útiles de tiempo:

  • Hoy
  • Primer día del mes anterior
  • Primer día del mes corriente
  • Primer día del mes siguiente
  • Último día del mes anterior
  • Último día del mes corriente
  • Último día del mes siguiente
DECLARE @hoy DATETIME
SELECT @hoy = GETDATE() SELECT CONVERT(VARCHAR(25), @hoy, 103) AS Fecha, 'Hoy' AS [Descripción]
UNION
SELECT CONVERT(VARCHAR(25), DATEADD(MONTH, DATEDIFF(MONTH, 0, @hoy) - 1, 0), 103) AS Fecha, 'Primer día del mes anterior' AS [Descripción]
UNION
SELECT CONVERT(VARCHAR(25), DATEADD(dd, -(DAY(@hoy) - 1),@hoy), 103) AS Fecha, 'Primer día del mes corriente' AS [Descripción]
UNION
SELECT CONVERT(VARCHAR(25), DATEADD(dd, -(DAY(DATEADD(mm, 1, @hoy)) - 1), DATEADD(mm, 1, @hoy)), 103) AS Fecha, 'Primer día del mes siguiente' AS [Descripción]
UNION
SELECT CONVERT(VARCHAR(25), DATEADD(MONTH, DATEDIFF(MONTH, -1, @hoy) - 1, -1), 103) AS Fecha, 'Último día del mes anterior' AS [Descripción]
UNION
SELECT CONVERT(VARCHAR(25), DATEADD(dd, -(DAY(DATEADD(mm, 1, @hoy))), DATEADD(mm,1,@hoy)), 103) AS Fecha, 'Último día del mes corriente' AS [Descripción]
UNION
SELECT CONVERT(varchar(25), DATEADD(dd, -(DAY(DATEADD(mm, 2, @hoy))), DATEADD(mm, 2, @hoy)), 103) AS Fecha, 'Último día del mes siguiente' AS [Descripción]
GO