Ver Mensaje Individual
  #3 (permalink)  
Antiguo 18/01/2016, 10:33
Avatar de Lecquio
Lecquio
 
Fecha de Ingreso: mayo-2004
Ubicación: Asturias, España
Mensajes: 948
Antigüedad: 20 años, 10 meses
Puntos: 34
Respuesta: Consulta me duplica datos

Sí me lo duplica, porque los pagos son al expediente, no por contrario.
Si hay 50€ pagados a un expediente con 3 contrarios, me devuelve:
contrario1 50€
contrario2 50€
contrario3 50€

Y debería devolver solo: contrario1 50€ (o cualquier contrario, eso no me preocupa)

Con tu consulta me salía lo mismo que en mi primer ejemplo, pero me dió una idea y parece que me salió así:
Código SQL:
Ver original
  1. SELECT expedien.nexp,linpag.descripcio,linpag.pagosa,SUM(linpag.pagos_e),contra.nombcon
  2. FROM expedien
  3. LEFT JOIN pagos ON expedien.nexp=pagos.nexp
  4. LEFT JOIN linpag ON pagos.npagos=linpag.npagos
  5. LEFT JOIN (SELECT nexp, ncon FROM conexp GROUP BY nexp) AS nueva ON (expedien.nexp=nueva.nexp)
  6. LEFT JOIN contra ON nueva.ncon=contra.ncon
  7. WHERE (linpag.fecha > CAST("2016/01/01" AS DATE))
  8. GROUP BY linpag.pagosa, contra.nombcon
[/CODE]

Última edición por gnzsoloyo; 18/01/2016 a las 11:05