Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/01/2013, 06:10
ferminako
 
Fecha de Ingreso: abril-2010
Mensajes: 298
Antigüedad: 14 años
Puntos: 1
Resultados duplicados con distinct ...

Buenas a to2, el caso es que tengo estas tablas:




El caso es sencillo un usuario compra un licencia y al hacerlo se inserta la licencia y acto seguido el pago, hasta ahí todo bien pero a la hora de mostrar resultados referentes a licencias o pagos con las siguientes consultas:

1º SQL Me devulve datos relacionados con licencias:
Código MySQL:
Ver original
  1. SELECT licencias.*,tipolicencia.nombre as licencia,usuarios.nombre,apellidos,pagos.idpago from tipoLicencia
  2.         inner join licencias on tipoLicencia.idtipoLicencia=licencias.idtipoLicencia
  3.         inner join usuarios on licencias.idusuario=usuarios.idusuario
  4.         inner join pagos on usuarios.idusuario=pagos.idusuario
  5.         inner join ivas on pagos.idiva=ivas.idiva

2º SQL Me devulve datos relacionados con los pagos de las licencias anteriores:
Código MySQL:
Ver original
  1. SELECT pagos.*,usuarios.nombre,apellidos,ivaTexto,tipolicencia.nombre as licencia from tipoLicencia
  2.         inner join licencias on tipoLicencia.idtipoLicencia=licencias.idtipoLicencia
  3.         inner join usuarios on licencias.idusuario=usuarios.idusuario
  4.         inner join pagos on usuarios.idusuario=pagos.idusuario
  5.         inner join ivas on pagos.idiva=ivas.idiva

Si un usuario tiene una licencia y un pago asociado a la misma , muestra un resultado en ambas consultas, lo que es correcto, pero en el caso de que ese usuario tenga dos licencias o más y lo mismo en pagos , ambas consultas devuelven resultados duplicados.

He probado con distinct pero no consigo solucionarlo, quizas sea tema de los inner joins..

Alguna sugerencia??? Gracias!

Última edición por ferminako; 31/01/2013 a las 06:16