hola comunidad como están....
 
bueno me a surgido el siguiente problema... 
tengo una bd en la cual tengo las siguientes tablas: 
trabajador pkrun_trabajador (tiene como clave fk  a rut_empresa y  cod_faena)
empresa 
faena
entrada_trabajador (fk run_trabajador)
salida_trabajador (fk run_trabajador) 
entonces realizo la siguiente consulta    
Código SQL:
Ver original- SELECT trabajador.run_trabajador, trabajador.nombre_trabajador, entrada.fecha_entrada_trabajador, salida.fecha_salida_trabajador, faena.nombre_faena, empresa.nombre_empresa 
- FROM trabajador 
- INNER JOIN entrada_trabajador AS entrada ON entrada.run_trabajador = trabajador.run_trabajador 
- INNER JOIN salida_trabajador AS salida ON trabajador.run_trabajador = salida.run_trabajador 
- INNER JOIN empresa ON empresa.rut_empresa = trabajador.rut_empresa 
- INNER JOIN faena ON faena.cod_faena = trabajador.cod_faena 
- WHERE trabajador.run_trabajador = xxxxxxxx; 
lo que quiero obtener de esta consulta es que muestre lo siguiente 
run_trabajador - nombre_trabajador - fecha_entrada - fecha_salida - nombre_empresa - nombre_faena 
y de echo obtengo el resultado pero me multiplica la cantidad de registros de la tabla entrada_trabajador con el total de registros de la tabla salida_trabajador... 
y ese es mi problema.... si alguien tiene idea de por que ocurre esto? 
y como extra como se puede hacer para que cuando el trabajador tenga una fecha de entrada y no de salida en el campo fecha_salida quede en blanco o null? 
de antemano gracias