Ver Mensaje Individual
  #3 (permalink)  
Antiguo 18/01/2013, 09:00
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: problema consulta multitabla inner join

si te duplica los datos es que al hacer el join en una tabla tienes mas de un registro con el mismo trabajador(supongo que en la salida) aqui lo que puedes hacer es algo asi:

select run_trabajador,nombre_trabajador,fecha_entrada_tra bajador,fecha_salida_trabajador from (
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
) as t1 group by run_trabajador,nombre_trabajador,fecha_entrada_tra bajador,fecha_salida_trabajador

prueba con eso :), de si quieres que salga aun cuando no tenga registros en alguna tabla, para eso maneja left join en lugar de inner join ;)

saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me