MySQL Forums
Forum List  »  Spanish

ayuda con consulta en tres tablas
Posted by: byron Paredes
Date: March 18, 2014 04:53PM

Hola a tod@s, resulta que les pido su ayuda. Realice un programa de contabilidad y hasta ahora todo bien. Pero en uno de los reportes necesitan un cambio, el cual me ha dejado estancado ya que tengo que agregar una tercera tabla a la consulta y me he quedado parado. El entorno es el siguiente tengo tres tablas las cuales van asi (omitire los campos que no entran en la consulta):

cuentas:
cuenta vc(10)
nombre vc(10)
debehaber vc(1)

movimientos:
cuenta vc(10)
debe decimal(12,2)
haber decimal(12,2)
fecha1 date
poliza vc(12)

Polizas
numero vc(12)
tipo vc(2)

La consulta que esta funcionando es la siguiente:
Código:

select a.cuenta,a.nombre,

if(a.debehaber='D',ifnull((select sum(debe-haber) from movimientos b where fecha1 between '" + dFecha1 + "' and '" + dFecha2 + "' and a.cuenta=b.cuenta ),0.00),0.00) as debe1,
if(a.debehaber='H',ifnull((select sum(haber-debe) from movimientos b where fecha1 between '" + dFecha1 + "' and '" + dFecha2 + "' and a.cuenta=b.cuenta ),0.00),0.00) as haber1

from cuentas a where nivel=5"

(toda la consulta esta en una linea, para efectos que se entienda le di unos enteres)

Pero ahora necesito que si la poliza es de tipo="CI", que no me sume ni me reste ese movimiento. La tabla poliza no esta en la consulta inicial, esa hay que agregarla en alguna parte. El campo "poliza" de la tabla "movimientos" se puede vincular al campo "numero" de la tabla "polizas", para hacer la consulta.

Alquien me puede dar una manita, por favor.

Saludos cordiales,

byrpa

Options: ReplyQuote


Subject
Views
Written By
Posted
ayuda con consulta en tres tablas
2009
March 18, 2014 04:53PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.