Select

16/08/2005 - 21:18 por jose | Informe spam
Tengo una tabla

Fecha
01/01/2004
04/01/2004
06/01/2004
09/01/2004


quiero un select que devuelva:

a b
01/01/2004 04/01/2004
04/01/2004 06/01/2004
06/01/2004 09/01/2004
09/01/2004 FechaActual(16/08/2005)

O sea, me trae todos los registros, y una columna adicional que m,uestra la
fecha del registro siguiente


alguien me puede ayudar?


Muchas gracias
 

Leer las respuestas

#1 Alejandro Mesa
16/08/2005 - 22:06 | Informe spam
Trata:

create table t1 (
c1 datetime not null
)
go

insert into t1 values('20040101')
insert into t1 values('20040401')
insert into t1 values('20040601')
insert into t1 values('20040901')
go

select
convert(varchar(10), a.c1, 103) as a,
convert(varchar(10), coalesce(b.c1, getdate()), 103) as b
from
t1 as a
left join
t1 as b
on b.c1 = (select min(c.c1) from t1 as c where c.c1 > a.c1)
go


La funcion "convert" la uso solo para mostrar la fecha en formato
dd/mm/yyyy, pero en realidad el formateo es preferible que lo hagas en la
aplicacion cliente.


AMB

"jose" wrote:

Tengo una tabla

Fecha
01/01/2004
04/01/2004
06/01/2004
09/01/2004


quiero un select que devuelva:

a b
01/01/2004 04/01/2004
04/01/2004 06/01/2004
06/01/2004 09/01/2004
09/01/2004 FechaActual(16/08/2005)

O sea, me trae todos los registros, y una columna adicional que m,uestra la
fecha del registro siguiente


alguien me puede ayudar?


Muchas gracias

Preguntas similares