Ver Mensaje Individual
  #1  
Antiguo 02-12-2006
aladelta aladelta is offline
Miembro
 
Registrado: jul 2003
Posts: 70
Reputación: 21
aladelta Va por buen camino
union de select

Hola a todos;

Necesito que alguien encienda una vela en este tunel tan oscuro....

Primero paso a relatar lo que estoy haciendo y despues expongo mis dudas sobre como poder realizar esta consulta...
Tenemos una tabla llamada diario en la que tenemos 3 campos, cuentad,cuentah,importe..con estos valores
Cita:
cuentad cuentah importe
32100001 200.00
40000001 200.00
40000003 200.00
40000001 300.00
40000002 200.00
Mi interes es realizar una consulta para obtener la suma de los importes agrupados por cuentad y cuentah a si mismo desechar las cuentas que no empiezen por 4 y que los importes a sumar sean superiores a una cantidad cierta, de esta manera...
Código:
select cuentad as cuenta, sum(importe) as saldo 
from diario 
where cuentad like '4%'
group by cuentad having sum(importe)>99.99
Y la vista resultante seria asi

Cita:
cuenta saldo
40000001 200.00
40000003 200.00
Bien, ahora hago la union con otro select para realizar la misma operacion con el otro campo cuentah, con lo que la consulta sql quedaria de esta manera
Código:
select cuentad as cuenta, sum(importe) as saldo 
from diario 
where cuentad like '4%'
group by cuentad having sum(importe)>99.99
union
select cuentah as cuenta, sum(importe) as saldo 
from diario
where cuentah like '4%'
group by cuentah having sum(importe)>99.99
La consulta da unos resultados correctos como estos
Cita:
cuenta saldo
40000001 200.00
40000001 300.00
40000002 200.00
40000003 200.00
Ahora mi problema, mi pregunta, mis dudas se centran en que obtengo cuentas duplicadas y necesito dejar solamente una que sea la que tenga mayor saldo, para obtener una consulta correcta para mi con estos resultados
Cita:
cuenta saldo
40000001 300.00
40000002 200.00
40000003 200.00
Y estoy volviendome de color verde palido porque llevo buscando algo parecido en los foros pero no encuentro nada, por favor, alguien que me encienda la vela.....

Gracias....
Responder Con Cita