Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/11/2015, 10:28
IrvinSanchez14
 
Fecha de Ingreso: noviembre-2015
Mensajes: 18
Antigüedad: 9 años
Puntos: 0
consultas dobles

Hola necesito de su ayuda quiero unir dos resultados de dos select que tengo

el primero muestra los descuentos y la suma de ellos
Código SQL:
Ver original
  1. SELECT A.IDEMPLEADO,CONCAT(NOMBREEMPLEADO,' ',APELLIDOEMPLEADO) AS NOMBRE,C.SALARIOEMPLE,B.NOMBRESUCURSAL,COUNT(DESCUENTO) AS NDESCUENTO, SUM(DESCUENTO) AS DESCUENTO
  2. FROM   EMPLEADO A
  3. INNER JOIN SUCURSAL B ON A.IDSUCURSAL = B.IDSUCURSAL
  4. INNER JOIN SALARIO C ON A.IDEMPLEADO = C.IDEMPLEADO
  5. LEFT JOIN DESCUENTO D ON A.IDEMPLEADO = D.IDEMPLEADO
  6. WHERE A.IDSUCURSAL = 1 AND (D.fecha BETWEEN '2015-11-06' AND '2015-11-10')
  7. GROUP BY A.IDEMPLEADO
  8. UNION ALL
  9. SELECT  A.IDEMPLEADO,CONCAT(NOMBREEMPLEADO,' ',APELLIDOEMPLEADO) AS NOMBRE,C.SALARIOEMPLE,B.NOMBRESUCURSAL,0 AS NDESCUENTO, 0 AS DESCUENTO,0 AS numerodia,0 AS sumaex
  10. FROM   EMPLEADO A
  11. INNER JOIN SALARIO C ON A.IDEMPLEADO = C.IDEMPLEADO
  12. INNER JOIN SUCURSAL B ON A.IDSUCURSAL = B.IDSUCURSAL
  13. WHERE A.IDSUCURSAL = 1
  14. AND A.IDEMPLEADO NOT IN (
  15. SELECT DISTINCT A.IDEMPLEADO
  16. FROM   EMPLEADO A
  17. LEFT JOIN DESCUENTO D ON A.IDEMPLEADO = D.IDEMPLEADO
  18. WHERE A.IDSUCURSAL = 1 AND (D.fecha BETWEEN '2015-11-06' AND '2015-11-10')
  19. )
y el segundo muestra los diasextras trabajado y su total

Código SQL:
Ver original
  1. SELECT  A.IDEMPLEADO,CONCAT(NOMBREEMPLEADO,' ',APELLIDOEMPLEADO) AS NOMBRE,
  2. C.SALARIOEMPLE,B.NOMBRESUCURSAL,
  3. SUM(NUMERODIA) AS NUMERODIA,SUM(VALOR) AS SUMAEX FROM EMPLEADO A
  4. INNER JOIN SUCURSAL B ON A.IDSUCURSAL = B.IDSUCURSAL
  5. INNER JOIN SALARIO C ON A.IDEMPLEADO = C.IDEMPLEADO
  6. LEFT JOIN DIAEX E ON E.IDEMPLEADO=A.IDEMPLEADO
  7. WHERE A.IDSUCURSAL=1
  8. AND E.FECHA BETWEEN'2015-11-06' AND '2015-11-10'
  9. GROUP BY A.IDEMPLEADO
  10. UNION ALL
  11. SELECT   A.IDEMPLEADO,CONCAT(NOMBREEMPLEADO,' ',APELLIDOEMPLEADO) AS NOMBRE,
  12. C.SALARIOEMPLE,B.NOMBRESUCURSAL,
  13. 0 AS NUMERODIA,0 AS SUMAEX FROM EMPLEADO A
  14. INNER JOIN SALARIO C ON A.IDEMPLEADO=C.IDEMPLEADO
  15. INNER JOIN SUCURSAL B ON A.IDSUCURSAL = B.IDSUCURSAL
  16. WHERE A.IDSUCURSAL = 1
  17. AND A.IDEMPLEADO NOT IN(
  18. SELECT DISTINCT A.IDEMPLEADO
  19. FROM EMPLEADO A
  20. LEFT JOIN DIAEX E ON A.IDEMPLEADO=E.IDEMPLEADO
  21. WHERE A.IDSUCURSAL=1 AND (E.FECHA BETWEEN'2015-11-06' AND '2015-11-10')
  22. )
si los uno los dos me repite los empleados dos veces donde los primeros 3 (solo 3 datos hay en idsucursal=1) me muestra sus descuentos pero luego me vuelve a mostrar esos mismos 3 solo que ahora don el dia extra y su valor lo que quiero es que solo me liste los 3 empleados y ahi me aprezcan sus descuentos y dias extras juntos

les agradeceria mucho si me pudieran ayudar