SQL - query de los 3 meses anteriores

 
Vista:

query de los 3 meses anteriores

Publicado por miguel (27 intervenciones) el 06/12/2004 17:46:47
De la tabla [campañas] la columna fecha de tipo smalldatetime
selecionar todas las campañas de los ultimos 3 meses
select * from campañas
where month(fecha).....
¿como leo el mes actual y los 3 meses anteriores?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:query de los 3 meses anteriores

Publicado por Liliana (426 intervenciones) el 06/12/2004 19:06:07
Hola Miguel,
Sería algo así:

SELECT *
FROM Campañas
WHERE MONTH(fecha) >= DATEADD(MM, -3, GETDATE()) -- está restando tres meses a la fecha actual

Saludos, Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:query de los 3 meses anteriores

Publicado por miguel (27 intervenciones) el 06/12/2004 21:14:37
gracias Liliana
falto el month, cada dia aprendo nuevas funciones del SQL
select * from campañas
where month(fecha)<=month(dateadd(m,-3,getdate()))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:query de los 3 meses anteriores

Publicado por Liliana (426 intervenciones) el 07/12/2004 15:09:18
Hola Miguel,
Mirando tu respuesta me di cuenta que había un error. Comparando solo los meses, tendrás problemas con el cambio de año, por eso no se nota ahora.
Pero para dejar en claro la respuesta correcta, va este ejemplo:

declare @fecha datetime
select @fecha = '20040710'
select @fecha, DATEADD(MM, -3, GETDATE()), case when @fecha >= DATEADD(MM, -3, GETDATE()) then 'si' else 'no' end
select @fecha = '20041110'
select @fecha, DATEADD(MM, -3, GETDATE()), case when @fecha >= DATEADD(MM, -3, GETDATE()) then 'si' else 'no' end

Saludos, Liliana.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:query de los 3 meses anteriores

Publicado por Nelson Eduardo (1 intervención) el 16/01/2023 19:11:48
SELECT *
FROM Campañas
WHERE (fecha) >= getdate()-90
--es mejor así 90 días ya que las anteriores cuando pasa al siguiente año no sirve
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:query de los 3 meses anteriores

Publicado por NORMAN (1 intervención) el 06/07/2023 23:34:21
Gracias por la ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar