Como sumar el contenido de los registros anteriores

20/04/2005 - 15:22 por Bárbara González | Informe spam
Saludos al grupo
Estoy haciendo la presentación de una tabla pero necesito que en una de las
columnas se valla llevando el acumulado de una columna monto, algo asi como
debe, haber, saldo en donde saldo es la suma de los anteriores registro. He
podido hacer que me lo haga con una subconsulta en el campo saldo, pero no
logro validar que no me tome los siguientes registros. Alguien puede
ayudarme para no hacerlo por programación si no por una consulta SQL. Claro
si se puede. Gracias de antemano

Bárbara González
Venezuela.-

Preguntas similare

Leer las respuestas

#6 Bárbara González
21/04/2005 - 14:52 | Informe spam
Será que agregando un count(*) podría hacerlo?


Bárbara González
Venezuela.-
"Bárbara González" escribió en el mensaje
news:
No tengo nada que identifique un registro de otro solo un ID, que es un
numero que se genera consecutivo al crear el registro, pero este no estará
ordenado en la consulta ya que debo ordenar por clase que toma un valor 0
o 1 mas la fecha

Bárbara González
Venezuela.-
"Alejandro Mesa" escribió en el
mensaje news:
Bárbara,

Pudiera ver la definicion de la tabla?
Que columnas identitfican unicamente una fila en esta tabla?
Como identifico las filas anteriores a una fila especifica?

Disculpa, pero la sentencia select que posteastes no me dice nada sobre
estas preguntas.


AMB


"Bárbara González" wrote:

SELECT transacciones.clase AS clase,
transacciones.emision AS emision,
transacciones.referencia AS referencia,
transacciones.nombre AS descripcion,
case when transacciones.monto<0 then transacciones.monto else 0 end AS
debe,
case when transacciones.monto>0 then transacciones.monto else 0 end AS
haber,
0 AS saldo
FROM transacciones
ORDER BY clase DESC, emision, referencia, nombre

esta es la tabla y donde dice 0 AS saldo es dond equiero poner el
acumulado
de los registros anteriores

Gracias estoy estudiando tu ejemplo

Bárbara González
Venezuela.-
"Alejandro Mesa" escribió en
el
mensaje news:
> Bárbara,
>
> Pudieramos ver la definicion de la tabla?
>
> Ejemplo:
>
> use northwind
> go
>
> create table dbo.t (
> colA int not null identity unique,
> colB int not null,
> colC int not null,
> )
> go
>
> insert into t (colB, colC) values(1, 100)
> insert into t (colB, colC) values(1, -100)
> insert into t (colB, colC) values(1, 200)
> insert into t (colB, colC) values(1, -100)
> insert into t (colB, colC) values(1, 50)
> insert into t (colB, colC) values(1, 25)
> insert into t (colB, colC) values(2, 1000)
> insert into t (colB, colC) values(2, -100)
> insert into t (colB, colC) values(2, 300)
> insert into t (colB, colC) values(2, -100)
> insert into t (colB, colC) values(2, 150)
> insert into t (colB, colC) values(2, -25)
> go
>
> select
> a.colA,
> a.colB,
> a.colC,
> sum(b.colC) as acumulado
> from
> t as a
> left join
> t as b
> on a.colB = b.colB and b.colA <= a.colA
> group by
> a.colA,
> a.colB,
> a.colC
> order by
> a.colA,
> a.colB
> go
>
> drop table t
> go
>
>
> AMB
>
>
> "Bárbara González" wrote:
>
>> Saludos al grupo
>> Estoy haciendo la presentación de una tabla pero necesito que en una
>> de
>> las
>> columnas se valla llevando el acumulado de una columna monto, algo
>> asi
>> como
>> debe, haber, saldo en donde saldo es la suma de los anteriores
>> registro.
>> He
>> podido hacer que me lo haga con una subconsulta en el campo saldo,
>> pero
>> no
>> logro validar que no me tome los siguientes registros. Alguien puede
>> ayudarme para no hacerlo por programación si no por una consulta SQL.
>> Claro
>> si se puede. Gracias de antemano
>>
>> Bárbara González
>> Venezuela.-
>>
>>
>>









email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida