Hola, bueno vol al grano, tengo estas tablas:
TABLA CHOFERESCitaridchofer dni nombre apellido direccion telefono lugar_trabajo idclase foto resolucion
TABLA SECTORESCitarid tipo nombre
TABLA ASIGNACIONES_CHOFERESCitarid_chofer id_auto
Y tengo el siguinte codigo SQL que me genera una vista:
select
c.idchofer AS id,
c.apellido AS apellido,
c.nombre AS nombre,
c.idclase AS clase,
c.telefono AS telefono,
s.nombre AS sector
from
(choferes c join sectores s)
where (c.lugar_trabajo = s.id)
Hasta aca todo bien, el codigo SQL funciona perfecto,me devuelve una vista de todos los choferes con los datos deseados (cruzando tablas). El problema es que ahora quiero agregarle una condicion mas. La condicion que quiero agregar es que solo me devuelva los choferes cuyo id aparezca es la tabla ASIGNACIONES_CHOFERES, en la practica esto quiere decir que solo me devuelvan los choferes que tienen asignado un auto espefico, y esta asignacion se guarda en la tabla ASIGNACIONES_CHOFERES(id del chofer, id del auto asigado a este chofer).
Alguna sugerencia?
Yo creo que funcionaría con un:
AND asignaciones_choferes.id_chofer = choferes.idchofer
agregando un DISTINCT.
O ...
AND c.idchofer IN (SELECT DISTINCT id_chofer FROM asignaciones_choferes)
... que se ajusta mejor a tus necesidades
Saludos
Muchisimas gracias a ambos por responder. La solucion de Novlucker era justo lo que necesitaba, Tema resuelto!!
Saludos