none
CONSULTA SQL - DIFICULDADE RRS feed

  • Pergunta

  • Preciso gerar uma consulta que me informe o seguinte

    Divisao |    EXPATRIADOS ( admitidos,demitidos)      LOCAIS (admitidos,demitidos)     | POR MÊS

    Tento em vista que já tenho todas as bases restauradas de meses anteriores.

    Mas o problema e que não consigo fazer a somatória dos admitidos e demitidos por DIVISAO

    O Máximo que consegui chegar foi no resultado abaixo, só que este esta me retornando somente admitidos , e não agrupa os mesmos por divisão.

    Queria mais uma colunda com os demitidos no mesmo agrupamento e somado por DIVISION 

    DIVISION            LOCAL/EXPATRIADO  ADMITIDOS NO MES

    D004                      EXPATRIADO                                     2

    D005                      EXPATRIADO                                     6

    D901                      EXPATRIADO                                     6

    D902                      EXPATRIADO                                     5

    D903                      EXPATRIADO                                     1

    D004                      EXPATRIADO                                     3

    D005                      EXPATRIADO                                     7

    D006                      EXPATRIADO                                     20

    D007                      EXPATRIADO                                     1

    D901                      EXPATRIADO                                     1

    D902                      EXPATRIADO                                     1

    D006                      EXPATRIADO                                     3

    D006                      EXPATRIADO                                     8

    D901                      EXPATRIADO                                     1

    D004                      LOCAL                                                  26

    D005                      LOCAL                                                  3

    D006                      LOCAL                                                  35

    D007                      LOCAL                                                  1

    D901                      LOCAL                                                  26

    D902                      LOCAL                                                  22

    D006                      EXPATRIADO                                     1

    D005                      EXPATRIADO                                     1

    D006                      EXPATRIADO                                     20

    D902                      EXPATRIADO                                     1

    D901                      EXPATRIADO                                     1

    A consulta que estou utilizando pra isso é a seguinte:

    SELECT DIVISION,CASE WHEN NACIONALIDADE = '12' THEN 'LOCAL' ELSE 'EXPATRIADO' END "DESCRICAO",COUNT(*) AS ADMITIDOS FROM ( SELECT PPESSOA.NACIONALIDADE,CASE WHEN PPESSOA.NACIONALIDADE = '12' THEN 'LOCAL' ELSE 'EXPATRIADO' END "DESCRICAO", 'D' + SUBSTRING(PFRATEIOFIXO.CODCCUSTO,2,3) AS DIVISION,PFUNC.DATAADMISSAO ,  PFUNC.DATADEMISSAO

    FROM PFUNC

    INNER JOIN PPESSOA ON PFUNC.CODPESSOA=PPESSOA.CODIGO

    INNER JOIN PFRATEIOFIXO ON PFUNC.CHAPA=PFRATEIOFIXO.CHAPA

    WHERE

    (MONTH(PFUNC.DATAADMISSAO)='7' AND YEAR (PFUNC.DATAADMISSAO)='2012')) AS EXTERNA

    GROUP BY DIVISION,NACIONALIDADE

    sábado, 11 de agosto de 2012 10:24

Respostas

  • Felipe,

    Considere colocar 2 colunas, uma somando os funcionários que possuem data de demissão (os demitidos) e outra que some os que possuem data de demissão nula (os admitidos).

    Acredito que isso possa resolver para você. 

    Espero ter ajudado.

    []'s!

    • Marcado como Resposta Ricardo Russo quarta-feira, 9 de janeiro de 2013 13:05
    segunda-feira, 13 de agosto de 2012 18:59