Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Traer Nombre y Cargo de 2 Empleado (Ids en misma tabla)

Estas en el tema de Traer Nombre y Cargo de 2 Empleado (Ids en misma tabla) en el foro de Bases de Datos General en Foros del Web. Saludos Disculpas por si es algo enredado el titulo del caso, pero no sabria como podria describirlo en una sola linea de titulo a diferencia ...
  #1 (permalink)  
Antiguo 10/10/2011, 17:55
 
Fecha de Ingreso: octubre-2005
Mensajes: 76
Antigüedad: 19 años, 1 mes
Puntos: 5
Traer Nombre y Cargo de 2 Empleado (Ids en misma tabla)

Saludos

Disculpas por si es algo enredado el titulo del caso, pero no sabria como podria describirlo en una sola linea de titulo a diferencia del post.

El caso es que tengo una tabla donde guardo el Id del empleado1 y Id del empleado2 y de igal forma idCargo1, idCargo2. Esta es la tabla:

bono_suplencia
- numemple
- numemple2
- cantDias
- id_cargo_emple
- id_cargo_emple2
- fechaElab
- fechaDesde
- fechaHasta

Mi caso es hacer una SQL que a partir de estos datos relacionados con otras 2 tablas me saque el Numero de Empleado, Nombre Empleado, Cargo del Empleado. Pero por igual del Empleado1 y Empleado2. Esto esta relacionado a una informacion donde un Empleado sustituye a otro en X cargo por X cantidad de dias.

Las otras tablas que se relacionan son:

empleados
- numempleado
- nombre
- apellido
- id_cargo

cargos
- id
- cargo

Por ejemplo, una forma de consultar los datos del Empleado1 seria:

SELECT BS.numemple As Numero1, E.nombre As Nombre1, E.apellido As Apellido1, C.cargo As Cargo1
FROM bono_suplencia AS BS, empleados AS E, cargos AS C
WHERE BS.numemple=E.numempleado
AND BS.id_cargo_emple=C.id

El problema esta en que necesito tambien sacar el Numero, Nombre , Apellido y Cargo del Empleado 2. Su ID tambien esta en la misma tabla que el ID del Empleado 1.

De que forma podria realizar una SQL que me devuelva la siguiente informacion a partir de una sola consulta SQL:

- NumeroEmple1, Nombre1, Apellido1, Cargo1
- NumeroEmple2, Nombre2, Apellido2, Cargo2

Es una Base de Datos Access

Saludos

Última edición por UserCod; 10/10/2011 a las 18:44
  #2 (permalink)  
Antiguo 10/10/2011, 19:27
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años
Puntos: 85
Respuesta: Traer Nombre y Cargo de 2 Empleado (Ids en misma tabla)

Tienes un error de diseño, debes cambiar la tabla bono_suplencia quitando los campos numemple2 y id_cargo_emple2, dejar algo así:

Código:
- numemple
- cantDias
- id_cargo_emple
- fechaElab
- fechaDesde
- fechaHasta
Después hay que modificar el contenido de la tabla, es decir, si antes tenías una única fila con la información de los dos empleados, ahora tendrás dos filas, una para cada empleado, hecho esto tu consulta dará los resultados en el formato que buscas.

Saludos
  #3 (permalink)  
Antiguo 11/10/2011, 05:06
 
Fecha de Ingreso: octubre-2005
Mensajes: 76
Antigüedad: 19 años, 1 mes
Puntos: 5
Respuesta: Traer Nombre y Cargo de 2 Empleado (Ids en misma tabla)

Gracias matanga

Bien, lo que hare sera incluir los campos que me faltan en la tabla y asi hago la busqueda o seleccion buscando un solo empleado (el 1ero o principal) ya que la opcion de dos registros no me sirve.

Gracias, saludos.

Etiquetas: ids, nombre, sql, tabla, tracker
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:49.