Ver Mensaje Individual
  #4 (permalink)  
Antiguo 14/07/2010, 06:25
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Consulta en dos tablas ( se duplican algunos datos )

Analicemos la lógica de esto.
INNER JOIN hace que la consulta devuelva registros si y sólo si los campos puestos en el ON son iguales en valor. Únicamente. Eso implica una vinculación 1:1 entre los registros de la primera tabla con los de la segunda. Pero INNER JOIN no necesariamente se define por la PK, sino que puede cruzar cualquier tipo de campo con cualquier otro. La lógica de ese JOIN depende del usuario, no del DBMS, por lo que en realidad el problema es el tipo de datos que se crucen.

Así que, si la primera tabla es la que tiene la mayor cantidad de registros (considerando que haya más ingresos de uno de los usuarios, por ejemplo), la consulta debe devolver esa misma cantidad, o menor.

Ahora bien, para que la consulta cuente repetidamente registros en la primera tabla, se debe dar una única situación: Que haya dos o más registros en la segunda tabla que coincidan con uno sólo de la primera...

Pero para que eso se de, debe haber una condición necesaria: La segunda tabla no tiene definida su PK en el campo nit, o bien ese campo no se definió como UNIQUE (si no es PK).

En cualquier caso, debes revisar la tabla de datos...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)