Tema: Inner Join
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/10/2013, 11:34
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: 14 años, 6 meses
Puntos: 2658
Respuesta: Inner Join

Cita:
Hola gracias por responder a mi ayuda. Si quito el Where me manda todos los registros que hay en las tablas pero repetidos unos con otros y solo quiero que me de lo que corresponde a cada tabla dependiendo la ClaveEmpleado o una consulta general sin la condición,
Vamos por partes:
1) No existen repeticiones desde el punto de vista de bases de datos. Repeticiones se dan cuando todos los campos devueltos en la consulta, en cada registro son iguales entre dos registros dados. En tu caso debe estar "repitiendo" algunos datos de algunas columnas, pero eso sólo significa que se trata de tablas relacionadas en cardinalidad 1:N o N:N, y se repiten N veces los registros de al menos una tabla... tantas como registros relacionados hay.
2) Yo de dije que luego de quitarlo verificaras visualmente, es decir que buscaras visualmente el que estás indicando en ese WHERE. La idea es que te dieras cuenta que no había ninguno que cumpliera la condición "ClaveEmpleado='1000'".
¿Se entiende?
Un INNER JOIN devolverá datos si se cumplen todos los INNER JOIN al mismo tiempo, y en el caso de existir condiciones en el WHERE, de los que devuelve el JOIN, sólo los que las cumplen.
Desde el momento en que no da error, entonces lo que tienes son condiciones que no se cumplen en tu consulta.
Tan simple y sencillo como eso.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)