MySQL - Sumar valores parciales

   
Vista:

Sumar valores parciales

Publicado por Italo Juan (25 intervenciones) el 09/06/2008 05:20:45
Estimados.
A ver si me pueden tirar una idea, tengo que mostrar las cuotas de un credito en una grilla, concretamente en un DataListView (sin enlazar. VB.Net) los datos estan en MySql V 5.xx. entre los datos a mostrar esta el Nro. de Cuota, el Importe, los Saldos de cada cuota y una columna que me vaya sumando los saldos para llegar a la ultima cuota mostrando el total de la deuda. por ej.
Nro.Cta Importe Saldo Acumulado
01 100 50 50
02 100 100 150
03 100 100 250
.... ...... ....... .......
La columna Acumulado la quiero ir calculando directamente en el Select e ir dejando el valor en una variable.
Desde ya muchas gracias.
Italo
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:Sumar valores parciales

Publicado por ery (69 intervenciones) el 09/06/2008 18:20:20
Con una funcion lo resuelves

//Aqui la creas
drop function if exists func_saldo;
delimiter $$;
create function func_saldo(valor int)
returns int
not deterministic
no sql
begin
set @saldo = @saldo + valor;
return @saldo;
end$$
delimiter ;

//Aqui inicializas el valor de la Variable de Session
set @saldo = 0;

//Aqui haces el select
select id, valor, func_saldo(valor) as saldo from prueba;
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:Sumar valores parciales

Publicado por Italo Juan (25 intervenciones) el 10/06/2008 03:08:13
Hola Master. Muchas gracias por responder y por ampliar el horizonte de vision, en realidad soy bastante novato en este tema, los select los hago convocando al siguiente comando: cmd.CommandType = CommandType.Text por lo que veo, (si no estoy equivocado) voy a tener que generar en mi base un Procedimieto almacenado para luego convocarlo, es asi la idea, verdad.?
Saludos.
Italo
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:Sumar valores parciales

Publicado por Ery (69 intervenciones) el 10/06/2008 12:06:04
Hacerlo desde un procedimiento almacenado es una opcion, pero podrias hacerlo generando 2 consultas, la primero inicializa la variable @saldo = 0 y la segunda hace el select,

las Variables @ son variables por conexion, cada vez que un cliente se conecta con un usuario se crea puede crear y utilizar sus variables de conexion independientemente de los otros usuarios. con la conexion abierta puedes ejecutar cuantos query necesites

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:Sumar valores parciales

Publicado por Italo Juan (25 intervenciones) el 10/06/2008 17:59:45
Ya me pongo a probar. una vez mas muchas gracias.!
Saludos.
Italo
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:Sumar valores parciales

Publicado por Emerson Palacios (29 intervenciones) el 15/06/2008 17:20:02
Lo que hago yo en estos casos es guardar el valor acumulado en el registro de la cuota cosa que despues con un simple select lo puedes mostrar todo y te evitas de complicaciones. por ejemplo:
En la cuota Nº 01 el importe es 50 al no existir otra cuota guardas en le campo acumulado el valor 50.
En la cuota Nº02 el importe es 100 haces un select y guardasen una variable el valor del acumulado de la ultima cuota en este caso la Nº01 que es 50 y la sumas al importe de la cuota qu estas ingresando osea 100 la suma es 150 y eso lo insertas en el nuevo registro. asi sucesivamente.
espero que te sirva nos vemos.
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:Sumar valores parciales

Publicado por Italo Juan (25 intervenciones) el 16/06/2008 17:49:37
Hola Emerson.
Siempre las sugerencias suman, asi que muchas gracias, como que tuve que dar una solucion "rapida" lo que hice fue agregar una columna al DataGridView y con algunas lineas de codigo desde el VB.net pude solucionarlo, aunque la idea original era hacerlo desde al mismo select.
Una vez mas muchas gracias.
Saludos
Italo
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