Hace días que estoy haciendo pruebas para poder realizar una consulta mysql para que me devuelva ciertos valores entre dos tablas, el problema es que los envía duplicados, se la razón, pero no sé como solucionarlo, ahora la explicación:
Tengo dos tablas
Código MySQL:
yVer original
`id`, `horaIn`, `horaOut`, );
Código MySQL:
Ver original
`hid`, `id_usuario`, `id_horario`, `fecha`, `registrado`, );
en la tabla lista_horarios tengo una lista de horarios, estos sirven para listarlos cada día (el código es para un sistema de turnos)
en la tabla horario guardo el id del usuario, id del horario, la fecha que seleccionó para el turno y un registro con fecha y hora de cuando realizó la operación.
lo que deseo hacer es listar todos los horarios de la tabla 'lista_horarios' pero a excepción de lo que ya se han tomado para una fecha concreta (hay otras funciones del código que no menciono, porque no son parte del problema)
la consulta que hago para eso es
Código MySQL:
Ver original
y me devuelve el doble de registros que tengo menos los que corresponden, esos no los duplica
sería algo como
id 1
id 1
id 2
id 3
id 3
id 4
id 4
el "problema" es que de la tabla horario hay veces que hay más de un resultado, porque un mismo usuario puede haber tomado dos turnos ese mismo día y quizás quiera tomar un tercero
quiere decir que si yo hago un
Código MySQL:
Ver original
el resultado podría ser
1 - 09:30
2 - 12:00
es por eso que duplica mis resultados, lo que no sé es cómo hacer para que no los duplique intenté con GROUP BY y DISTINCT, pero al hacerlo obtengo todos los registros, incluyendo los que quiero que no aparezcan.
espero haber sido claro