SQL - acumular valores

 
Vista:

acumular valores

Publicado por Washington (1 intervención) el 08/03/2007 15:55:45
Mi consulta es la siguiente:

tengo esta tabla

Movimiento
Cuenta Valor Referencia Fecha
123 100 ingreso 01/01/2006
123 20 egreso 01/02/2006
123 50 ingreso 05/02/2006
123 10 egreso 07/03/2006

Se debe desplegar cada movimiento y el saldo actual

Cuenta Ingreso Egreso Saldo
123 100 0 100
123 0 20 80
123 50 0 130
123 0 10 120

El problema es como acumular el saldo, si utilizo la función sum() tendría que agrupar y este no es el caso
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

RE:acumular valores

Publicado por Isaías (5072 intervenciones) el 08/03/2007 18:03:45
-- Acmula el valor en una columna
-- D.R. Alejandro Mesa

use northwind
go

create table t1 (
Codigo varchar(15) not null unique,
Detalle varchar(25),
Importe money,
Porcentaje decimal (5, 2)
)
go

insert into t1 values('11111', 'xxxxxx', 100.00, 5.5)
insert into t1 values('88888', 'yyyyyy', 55.50, 4.8)
insert into t1 values('33333', 'aaaaaa', 55.00, 4.8)
insert into t1 values('99999', 'wweew', 40.00, 4.0)
go

select
a.codigo, a.detalle, a.importe, a.porcentaje,
sum(b.porcentaje) as porcentaje_acumulado
from
t1 as a
left join
t1 as b
on a.porcentaje < b.porcentaje
or (a.porcentaje = b.porcentaje and a.codigo >= b.codigo)
group by
a.codigo, a.detalle, a.importe, a.porcentaje
order by
a.porcentaje desc, a.codigo
go

drop table t1
go
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:acumular valores

Publicado por Juanma (1 intervención) el 03/09/2007 12:56:22
Eres un crark...
Saludos
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:acumular valores

Publicado por Drogo (1 intervención) el 05/03/2008 20:35:37
Estas bien pendejo....
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