Principales respuestas
¿Cómo mostrar el sueldo actual de un empleado?

Pregunta
-
INSERT INTO TEmpleado (cod_empl, nombre, apellido1, apellido2, cedula, nacimiento, estado) VALUES (1, 'Ariel', 'Rocabado', 'Algarañas', '63242123 SC', '23/12/1990', 1), (2, 'Alejandro', 'Cordova', 'Paniagua', '68487954 LP', '15/04/1985', 1) INSERT INTO TSueldo (cod_suel, sueldo, fecha, cod_empl) VALUES (1, 1800, '01/01/2016', 1), (2, 1900, '01/01/2016', 2), (3, 2000, '01/12/2016', 1), (4, 2500, '01/11/2016', 2)
Esta es la información que tengo, por favor
¿Cómo puedo hacer un reporte que me diga solo la información del empleado con el sueldo actual que tiene?
me tendría que mostrar algo así:
cod_empl | nombre completo | cédula | nacimiento | sueldo 1 | Ariel Rocabado Algarañas | 63242123 SC | 23/12/1990 | 2000 2 | Alejandro Cordova Paniagua | 68487954 LP | 15/04/1985 | 2500
- Editado Misael_RS jueves, 15 de diciembre de 2016 1:23
Respuestas
-
Puedes intentar con la siguiente consulta:
WITH Sueldos AS ( SELECT t1.cod_empl, t1.sueldo, ROW_NUMBER() OVER(PARTITION BY t1.cod_empl ORDER BY t1.fecha DESC) AS [Fila] FROM TSueldo t1 ) SELECT e.cod_empl, CONCAT(e.nombre, ' ' , e.apellido1, ' ' , e.apellido2) AS [Nombre completo], e.cedula, e.nacimiento, s.sueldo FROM nTEmpleado e INNER JOIN Sueldos s ON (e.cod_empl = s.cod_empl) AND (s.Fila = 1);
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
Todas las respuestas
-
Puedes intentar con la siguiente consulta:
WITH Sueldos AS ( SELECT t1.cod_empl, t1.sueldo, ROW_NUMBER() OVER(PARTITION BY t1.cod_empl ORDER BY t1.fecha DESC) AS [Fila] FROM TSueldo t1 ) SELECT e.cod_empl, CONCAT(e.nombre, ' ' , e.apellido1, ' ' , e.apellido2) AS [Nombre completo], e.cedula, e.nacimiento, s.sueldo FROM nTEmpleado e INNER JOIN Sueldos s ON (e.cod_empl = s.cod_empl) AND (s.Fila = 1);
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios. -