Ir para conteúdo
leodamian

[Resolvido] Help Concatenar Case When Oracle

Recommended Posts

Boa Tarde Pessoal, 

 Preciso de uma ajuda para concatenar dois resultado do meu case ( 'DEP1' E 'DEP2') , gostaria que o resultdado ficasse assim :

MODULOS

DEP1,DEP2

 

MEU SELECT 

select 
 pccarreg.numcar CARGA,
 pcempr.NOME_GUERRA,
 PCCARREG.CODMOTORISTA, 
 pccarreg.DESTINO AS "DESTINO",
 PCCARREG.DTFAT AS FATURADO,   
                          
(CASE WHEN PCPRODUT.MODULO = '2' THEN 'DEP2' 
      ELSE
      'DEP1'
      END) AS MODULOS             
            
         
            
FROM PCCARREG
 
JOIN PCPEDC ON PCPEDC.NUMCAR = PCCARREG.NUMCAR
            AND PCPEDC.POSICAO IN ('F','M')
JOIN PCEMPR ON PCEMPR.MATRICULA = PCCARREG.CODMOTORISTA
 
JOIN PCPEDI ON PCPEDI.NUMPED = PCPEDC.NUMPED
JOIN PCPRODUT ON PCPRODUT.CODPROD = PCPEDI.CODPROD 
      
WHERE PCCARREG.DATAMON IN (:DATAMON)

GROUP BY
pccarreg.numcar,
pccarreg.CODMOTORISTA,
pcempr.NOME_GUERRA,
pccarreg.DESTINO,
PCCARREG.DTFAT ,
(CASE WHEN PCPRODUT.MODULO = '2' THEN 'DEP2' 
      ELSE
      'DEP1'
      END)

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu pelo feedback Motta, 

usei o listagg , mas acho que não deu certo para o que eu queria.... usei o listagg e trouxe pra mim todos os modulos de cada produto do carregamento só que não agrupou ou eu estou errando em algo.

 

ficou assim o resultado

ex: carga      modulos

      15            1;1;1;1;1;1;1;1;1;1;1;2;2;2;2;2;2;2;2;2;2;8;8;8;8;8;8;8;8;8;8;8;8

            

          

Compartilhar este post


Link para o post
Compartilhar em outros sites

Puts cara não consegui fazer esse procedimento acima.

 

usei over(partition by), ele agrupou os modulos aí faltou o distinct no inicio do meu select.

funcionou....kkkk

 

valeu pela dica o LISTAGG .


 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.