Doubt with "pivot" ORACLE

Asked

Viewed 54 times

1

I would like to know how to put the fields CODIGO_PROCESSO, NOME_PRODUTO_PROCESSO and APROVADO_USO in the main select to show in my query

SELECT CODIGO_PROCESSO,
MAX (DECODE (tipo_arquivo, 'BT', caminho_arquivo)) ArquivoBT, 
MAX (DECODE (tipo_arquivo, 'FC', caminho_arquivo)) ArquivoFC, 
MAX (DECODE (tipo_arquivo, 'MS', caminho_arquivo)) ArquivoMS 
FROM (SELECT PQA.CODIGO_PROCESSO, PQN.NOME_PRODUTO_PROCESSO, PQN.APROVADO_USO, PQA.TIPO_ARQUIVO, PQA.CAMINHO_ARQUIVO FROM PQAQ PQA, PQIN PQN WHERE (PQA.CODIGO_PROCESSO = PQN.CODIGO_PROCESSO) AND (PQN.CODIGO_PROCESSO = 22))
GROUP BY CODIGO_PROCESSO

1 answer

2

No entry on the merits of the subselect motive

SELECT  CODIGO_PROCESSO, 
        NOME_PRODUTO_PROCESSO, 
        PROVADO_USO,
        MAX (DECODE (tipo_arquivo, 'BT', caminho_arquivo)) ArquivoBT, 
        MAX (DECODE (tipo_arquivo, 'FC', caminho_arquivo)) ArquivoFC, 
        MAX (DECODE (tipo_arquivo, 'MS', caminho_arquivo)) ArquivoMS 
FROM (SELECT PQA.CODIGO_PROCESSO, 
             PQN.NOME_PRODUTO_PROCESSO, 
             PQN.APROVADO_USO, 
             PQA.TIPO_ARQUIVO, 
             PQA.CAMINHO_ARQUIVO 
      FROM PQAQ PQA, PQIN PQN 
      WHERE (PQA.CODIGO_PROCESSO = PQN.CODIGO_PROCESSO) 
      AND (PQN.CODIGO_PROCESSO = 22))
GROUP BY CODIGO_PROCESSO, 
        NOME_PRODUTO_PROCESSO, 
        PROVADO_USO
  • It worked perfectly, thank you very much.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.