Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Problema con Join

Estas en el tema de Problema con Join en el foro de Mysql en Foros del Web. Buenas tardes, tengo una tabla llamada consorcio la que es padre de las tablas egreso e ingreso y lo que yo deseo es recuperar en ...
  #1 (permalink)  
Antiguo 04/03/2011, 18:31
 
Fecha de Ingreso: julio-2010
Mensajes: 45
Antigüedad: 13 años, 9 meses
Puntos: 3
Problema con Join

Buenas tardes, tengo una tabla llamada consorcio la que es padre de las tablas egreso e ingreso y lo que yo deseo es recuperar en una consulta el nombre del consorcio y la suma de egresos e ingresos relacionado a dicho consorcio probe con esta consulta pero se duplican valores y no se q hacer.


Código HTML:
SELECT c.idConsorcio codigo, c.Nombre Nombre, SUM( e.importe ) Egresos, SUM( i.importe ) Ingresos
FROM consorcio c, egreso e, ingreso i
WHERE e.idConsorcio = c.idConsorcio
AND i.idConsorcio = c.idConsorcio
AND e.estado <>  'Por Pagar'
GROUP BY e1.idConsorcio, i.idConsorcio

debido a q se duplicaban intente usar la sentecia distinct de esta forma


Código HTML:
SELECT c.idConsorcio codigo, c.Nombre Nombre, SUM(DISTINCT e.importe ) Egresos, SUM(DISTINCT  i.importe ) Ingresos
FROM consorcio c, egreso e, ingreso i
WHERE e.idConsorcio = c.idConsorcio
AND i.idConsorcio = c.idConsorcio
AND e.estado <>  'Por Pagar'
GROUP BY e1.idConsorcio, i.idConsorcio
pero el problema con esto es q si es que hay importes iguales asociados a un consorcio solo considera uno.


Porfa me podrian decir como seria la consulta correcta
  #2 (permalink)  
Antiguo 05/03/2011, 14:05
 
Fecha de Ingreso: abril-2008
Mensajes: 93
Antigüedad: 16 años
Puntos: 10
Respuesta: Problema con Join

SELECT c.idConsorcio codigo, c.Nombre Nombre, SUM( e.importe ) Egresos, SUM( i.importe ) Ingresos
FROM consorcio c, egreso e, ingreso i
WHERE e.idConsorcio = c.idConsorcio
AND i.idConsorcio = c.idConsorcio
AND e.estado <> 'Por Pagar'
GROUP BY 1,2
  #3 (permalink)  
Antiguo 08/03/2011, 08:35
 
Fecha de Ingreso: julio-2010
Mensajes: 45
Antigüedad: 13 años, 9 meses
Puntos: 3
Respuesta: Problema con Join

Bueno no me funciono con Join asi q hice lo que deseaba con select anidados
Código HTML:
SELECT nombre AS Nombre, idConsorcio AS id, (

SELECT SUM( importe ) 
FROM ingreso
WHERE idConsorcio = id
) AS Ingresos, (

SELECT SUM( importe ) 
FROM egreso
WHERE idConsorcio = id
AND estado <>  'Por Pagar'
) AS Egresos, (

SELECT SUM( importe ) 
FROM egreso
WHERE idConsorcio = id
AND estado =  'Por Pagar'
) AS CuentaXPagar, (

SELECT Ingresos - Egresos
) AS Saldo, (

SELECT Saldo - CuentaXPagar
) AS Saldo2, (

SELECT SUM( monto ) 
FROM cuentaxcobrar
WHERE idConsorcio = id
) AS CuentaXCobrar
FROM  `consorcio`

Etiquetas: join
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:55.