CONSULTA

21/02/2007 - 18:37 por INFORMÁTICA APLICADA | Informe spam
¿En una tabla con un campo de fecha como puedo con una sentencia select sacar
los registros de hoy, ayer, esta semana, la semana pasada, este mes y el mes
pasado?

Gracias anticipadas.
INFORMÁTICA APLICADA
 

Leer las respuestas

#1 Alejandro Mesa
21/02/2007 - 19:11 | Informe spam
declare @d datetime

set @d = convert(char(8), getdate(), 112)

select * from dbo.t1 where dt >= @d and dt < dateadd(day, 1, @d)

select * from dbo.t1 where dt >= dateadd(day, -1, @d) and dt < @d

select * from dbo.t1 where dt >= convert(char(6), @d, 112) + '01' and dt <
dateadd(month, 1, cast(convert(char(6), @d, 112) + '01' as datetime))

select * from dbo.t1 where dt >= convert(char(6), dateadd(month, -1, @d),
112) + '01' and dt < convert(char(6), @d, 112) + '01'


Te dejo el de las semanas como ejercicio.


AMB

"INFORMÁTICA APLICADA" wrote:

¿En una tabla con un campo de fecha como puedo con una sentencia select sacar
los registros de hoy, ayer, esta semana, la semana pasada, este mes y el mes
pasado?

Gracias anticipadas.
INFORMÁTICA APLICADA

Preguntas similares