Pular para o conteúdo
Visualizando 2 posts - 1 até 2 (de 2 do total)
  • Autor
    Posts
  • #93653
    isacjop
    Participante

      Pessoal… tenho que gerar um relatório de uma tabela que tenho que agrupar por tres campos(identificador, tipo_identificador e competencia)… seguinte, tenho que pegar os agrupamentos que tenham mais de um registro e ir jogando em um relatorio tipo:
      Identificador= xxxx | tipo_identificador= xx | competencia=xxxxxx
      —-reg 1—-
      —-reg 2—-
      Identificador= www| tipo_identificador= ww| competencia=wwwwww
      —-reg 1—-
      —-reg 2—-

      com esse select abaixo eu pegos os agrupamentos que quero (identificador, tipo_identificador, competencia):

      SELECT distinct identificador, competencia, tipo_identificador
      FROM
      textrato_caged t0
      , (SELECT *
      FROM (SELECT t1.*,
      count(*) over(PARTITION BY t1.identificador,
      t1.competencia,
      t1.tipo_identificador) cnt,
      row_number() over(PARTITION BY t1.identificador,
      t1.competencia,
      t1.tipo_identificador
      ORDER BY t1.passagem DESC, t1.data DESC) rn

      FROM textrato_caged t1)
      WHERE rn = cnt AND cnt > 1) tres
      WHERE (t0.identificador = tres.identificador
      AND t0.competencia = tres.competencia
      AND t0.tipo_identificador = tres.tipo_identificador
      AND t0.passagem = tres.passagem
      AND t0.data = tres.data
      )
      AND
      (
      t0.primeiro_dia <> tres.primeiro_dia
      OR t0.primeiro_emprego <> tres.primeiro_emprego
      OR t0.reemprego <> tres.reemprego
      OR t0.reintegracao <> tres.reintegracao
      OR t0.transferencia_entrada <> tres.transferencia_entrada
      OR t0.contrato_prazo_determinado <> tres.contrato_prazo_determinado
      OR t0.sem_justa_causa <> tres.sem_justa_causa
      OR t0.com_justa_causa <> tres.com_justa_causa
      OR t0.a_pedido <> tres.a_pedido
      OR t0.aposentadoria <> tres.aposentadoria
      OR t0.morte <> tres.morte
      OR t0.transferencia_saida <> tres.transferencia_saida
      OR t0.termino_contrato_prazo_determi <> tres.termino_contrato_prazo_determi
      OR t0.termino_contrato <> tres.termino_contrato
      OR t0.cd_cnae11 <> tres.cd_cnae11
      OR t0.cd_cnae20 <> tres.cd_cnae20
      OR t0.ind_cnae <> tres.ind_cnae
      )

      …mas preciso dos registros de cada agrupamento desse para formar o relatorio como dito acima.

      []´s
      Isac Almeida

      #93685
      Ishii
      Participante

        Olá,

        Dê uma pesquisada no Rollup na documentação do Oracle….

        []s Ishii

      Visualizando 2 posts - 1 até 2 (de 2 do total)
      • Você deve fazer login para responder a este tópico.