Saltar al contenido

SQL últimos 6 meses

Esta es la solución más válida que te podemos dar, sin embargo estúdiala detenidamente y analiza si es compatible a tu proyecto.

Solución:

Para MS SQL Server, puede usar:

where datetime_column >= Dateadd(Month, Datediff(Month, 0, DATEADD(m, -6,
current_timestamp)), 0)

en mysql

where datetime_column > curdate() - interval (dayofmonth(curdate()) - 1) day - interval 6 month

Demostración de SQLFiddle

En servidor SQL

where datetime_column > dateadd(m, -6, getdate() - datepart(d, getdate()) + 1)

Demostración de SQLFiddle

prueba este

where datediff(month, datetime_column, getdate()) <= 6

Para excluir o filtrar fechas futuras

where datediff(month, datetime_column, getdate()) between 0 and 6


Esta parte datediff(month, datetime_column, getdate()) obtendrá la diferencia de mes en el número de fecha actual y Datetime_Column y devolverá Filas como:

Resultado
1
2
3
4
5
6
7
8
9
10

Esta es nuestra condición final para obtener los datos de los últimos 6 meses

donde resultado <= 6

Comentarios y puntuaciones

Si para ti ha sido provechoso nuestro artículo, sería de mucha ayuda si lo compartes con otros programadores así contrubuyes a difundir nuestra información.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *