Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/06/2010, 11:10
helacer
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años, 7 meses
Puntos: 50
Ayuda mejorar consulta oracle

Como estan

Tengo una tabla donde estan lso detalles de uns flujos de un usuario

la tabla es algo parecido a esto


Flujo -- Usuario -- Valor -- Fecha
001 -- 1 -- 10000 -- 03/02/2010
001 -- 1 -- 12000 -- 03/02/2010
002 -- 1 -- 50000 -- 03/04/2010
002 -- 1 -- 10000 -- 03/04/2010
002 -- 2 -- 10000 -- 03/04/2010


Necesito realizar la sumatoria del valor del flujo donde la fecha sea mayor para determinado usuario.

Es decir, primero necesitaria saber entre los flujos del usuario cual es e lque tiene fecha mayor y luego realizar la sumatoria de los valores de este flujo. En el ejemplo para el usuario 1 seria en flujo 002 y el resultado seria 60.000


Pense haciendolo asi pero no me funciono me saca error

select sum(valor) from flujos where usuario=1 and codflujo = (select codflujo from flujos where usuario=1 and rowid=1 order by fecha desc)


"rowid hace referencia al campo que crea oracle con el consecutivo del registro seleccionado no recuerdo si se llama asi exactamente "no tengo oracle en este pc para verificar" pero lo pongo para que me entiendan que estoy haciendo, lo utilizo para que solo me traiga un registro"

hay alguna otra manera de hacerlo o como arreglo la que tengo hecha?

Gracias

Última edición por helacer; 29/06/2010 a las 11:55