Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/10/2009, 08:51
Enfermin
 
Fecha de Ingreso: septiembre-2009
Mensajes: 54
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Ayuda, consulta con 3 tablas, (ahora se duplican los resultados)

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Código sql:
Ver original
  1. SELECT DISTINCT
  2.    M.nombres,  
  3.    HI.horaingreso,  
  4.    HI.horasalida
  5. FROM master M  
  6.    INNER JOIN horaingreso HI ON M.id=HI.docenteid  
  7.    INNER JOIN horasalida HS ON HS.docenteid=HS.docenteid;
El error es que hasta el momento en que ponías master.id=horasalida.docenteid , aún no se había leído la tabla horasalida, sino que correspondía poner horaingreso.

En cuanto a la duplicación de datos, hay tres posibilidades: Lo más probable es que haya en realidad más de un horario de entrada y salida asignado a la misma persona. Otra posibilidad es que se esté produciendo un error de interpretación por parte de MySQL porque le has puesto el mismo nombre a la tabla que a un campo de la tabla... lo que suele dar resultados erráticos. La otra posibilidad es que haya inconsistencias de información por repetición de entradas no detectadas.
hola, gracias porr esponder, revise tus sugerencias pero la primera lo doy por descartado, en mi tabla 1 usuario solo tiene un horario unico tanto de entrada como de salida, luego lo de la interpretacion por parte de mysql, ya probe cambiando de nombre a la tabla horaingreso y horasalida, pero tengo el mismo resultado (resultados triplicados) pero lo ultimo no entendi bien, haber si me das un ejemplo de como hacerlo porfa necesito ayuda

5 minutos despyues: ahora resulta que cuando hago la misma consulta pero solo con 2 tablas si funciona la consulta sin datos duplicados, pero cuando uso 3 tablas, los datos se duplican

de esta forma funciona bien
Código PHP:
SELECT master.nombreshoraingreso.horaingreso
FROM master
INNER JOIN horaingreso
ON master
.id=horaingreso.docenteid 
pero cuando lo hago usando 3 tablas me duplica y/o triplica el resultado
Código PHP:
SELECT master.nombreshoraingreso.horaingresohorasalida.horasalida 
FROM master
INNER JOIN horaingreso
ON master
.id=horaingreso.docenteid
INNER JOIN horasalida
ON horaingreso
.docenteid=horasalida.docenteid 
alguien sabe porque pasa eso??

Última edición por Enfermin; 24/10/2009 a las 09:02