Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Leer valor del registro anterio de una tabla

Estas en el tema de Leer valor del registro anterio de una tabla en el foro de SQL Server en Foros del Web. Como puedo leer el valor de un campo del registro anterior de una tabla. Necesito verificar la secuencia de un campo pero para eso necesito ...
  #1 (permalink)  
Antiguo 21/03/2007, 16:07
 
Fecha de Ingreso: marzo-2007
Mensajes: 3
Antigüedad: 17 años, 8 meses
Puntos: 0
Leer valor del registro anterio de una tabla

Como puedo leer el valor de un campo del registro anterior de una tabla. Necesito verificar la secuencia de un campo pero para eso necesito saber cual es valor que tiene ese mismo campo pero en el registro anterior.


Necesito saber si la diferencia entre el registro que actual y el registro anterior es igual a uno, sino no hay secuencia y lo debo de mostrar en mi select

Por ejemplo
3960
3961
3962
3964
3965
3967
3968

en mi select se debe mostrar los valores
3964
3967
  #2 (permalink)  
Antiguo 21/03/2007, 17:52
 
Fecha de Ingreso: febrero-2007
Mensajes: 182
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: Leer valor del registro anterio de una tabla

estoy empezando a trabajar con Sql server 2000, por lo cual no soy muy experto pero por lo que vi, si fuera yo me metería en Stored Procedures
y haría un procedimiento para solucionar el problema, definite una variable y un if dentro del bucle para que te devuelva los valores con diferencia de 1 con el posterior
espero que te sirva de algo..

Martín
  #3 (permalink)  
Antiguo 24/03/2007, 14:16
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años, 7 meses
Puntos: 25
Re: Leer valor del registro anterio de una tabla

SELECT TOP 2 llave
FROM tabla
ORDER BY id DESC

Eso te dará los últimos 2 registros y podrás hacer la operación que buscas.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #4 (permalink)  
Antiguo 27/03/2007, 15:33
 
Fecha de Ingreso: marzo-2007
Mensajes: 3
Antigüedad: 17 años, 8 meses
Puntos: 0
Re: Leer valor del registro anterio de una tabla

Ya resolvi el problema, abajo les detallo la consulta por si alguien tiene este mismo problema.

Select NumAct, NumAnt, LetrasAnt, Isnull((NumAct - NumAnt), 0 ) Diferecia
From (
Select Numero as NumAct ,
NumAnt = (Select top 1 Numero From Secuencia T2 Where T1.IDRegistro > T2.IDRegistro Order by IDRegistro Desc )
From Secuencia T1 )

donde IDRegistro es un campo auto numeric

Saludos, y gracias por sus comentarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:12.