consulta

19/09/2003 - 23:03 por Cam Acosta | Informe spam
Hola a todos,

en un esfuerzo por incursionar a la brigada anti cursores, como se puede
hacer esta consulta sin recurir a ellos:

Tengo la tabla:

IdMov Cant
1 10
2 5
3 -5
4 11

Y quiero una consulta con el saldo despues de cada movimiento (el orden es
por el id del movimiento)
IdMov Cant Saldo
1 10 10
2 5 15
3 -5 10
4 11 21

create table temporal(IdMov int primary key, Cant Int)

insert into temporal values(1,15)

insert into temporal values(2,5)

insert into temporal values(3,-5)

insert into temporal values(4,11)

Un saludo,

Camilo Acosta
 

Leer las respuestas

#1 Datatec
19/09/2003 - 23:42 | Informe spam
Hola, ah de ver varias formas, la primera que se me ocurre es como asi:


select IdMov, Cant,
Saldo = Cant + ISNULL((SELECT SUM(Cant) FROM temporal b WHERE b.IdMov <
a.IdMov), 0)
from temporal a

Saludos,
JCL

"Cam Acosta" escribió en el mensaje
news:Ow7$
Hola a todos,

en un esfuerzo por incursionar a la brigada anti cursores, como se puede
hacer esta consulta sin recurir a ellos:

Tengo la tabla:

IdMov Cant
1 10
2 5
3 -5
4 11

Y quiero una consulta con el saldo despues de cada movimiento (el orden es
por el id del movimiento)
IdMov Cant Saldo
1 10 10
2 5 15
3 -5 10
4 11 21

create table temporal(IdMov int primary key, Cant Int)

insert into temporal values(1,15)

insert into temporal values(2,5)

insert into temporal values(3,-5)

insert into temporal values(4,11)

Un saludo,

Camilo Acosta


Preguntas similares