Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/06/2013, 21:10
Bier
 
Fecha de Ingreso: enero-2002
Mensajes: 1.174
Antigüedad: 22 años, 3 meses
Puntos: 21
Respuesta: Mostrar registros no correspondidos

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Técnicamente no es imposible hacerlo. Es un modelo de casos bastante común en muchos ejercicios, pero no se puede usar INNER JOIN para eso.
Código MySQL:
Ver original
  1. FROM empleados a LEFT JOIN departamentos b ON a.id_departamento = b.id

Gracias gnzsoloyo
Respecto a la integridad referencial que te marca Leo, el caso es simple: SI ese campo empleados.id_departamento es NOT NULL, el dato es mandatorio y debe si o si tener un valor que exista en la tabla departamentos. Para que te funcione debe ser nulable.
Ahora bien, desde el punto de vista del análisis de sistemas, tu planteo es absurdo: No puede existir jamas un empleado sin asignar a un departamento, dentro de ninguna organización.
Pero... es tu sistema. Si lo quieres absurdo, estás en tu derecho.
Muchas gracias por tu respuesta, me ayuda mucho y lo voy a explorar.

Respecto a tu aseveración de lo absurdo, entiendo tu comentario. Mi planteamiento es solo para ejemplificar la necesidad, pero es aplicable a muchos otros casos, por ejemplo:
  1. Tener una tabla de artículos y una tabla de entradas y salidas, es posible que determinados artículos no hayan tenido movimiento.
  2. Tener una tabla de empleados y una tabla de días con asistencia, es posible que determinados empleados no hayan tenido asistencia.
  3. etc.

Salí regañado, en este caso es un planteamiento de ejemplo, no es un sistema en si.

Gracias nuevamente.