Ir para conteúdo
Fórum Script Brasil
  • 0

Transformar campo em colunas


Jose Eduardo Fernandes

Pergunta

Pessoal, bom dia.

Estou uma semana deparado com essa necessidade e não estou conseguindo resolver essa situação. Tenho um campo com as seguintes informações.

Subgrupo de Item Descrição
NAMUR | MATERIAL DE PDV | MPDV
NULL
SUPREME | CHOCOLATE EM PO | 50% CACAU
PREMIUM | COBERTURA | LASCAS / GOTAS
SUPREME | GANACHE | RECHEIO
MELKEN | CHOCOLATE EM PO | 50% CACAU
 

Preciso separar os dados que estão em pipe "|" para coluna. consegui chegar neste resultado abaixo. 

Subgrupo de Item Descrição    FABRICANTE    CATEGORIA    SUB
Padrão    Padrão        
SUPREME | MATERIAL DE PDV | MPDV    SUPREME     MATERIAL DE PDV | MPDV    DV | MPDV
SUPREME | MATERIAL DE PDV | MPDV    SUPREME     MATERIAL DE PDV | MPDV    DV | MPDV
NAMUR | MATERIAL DE PDV | MPDV    NAMUR     MATERIAL DE PDV | MPDV     | MPDV
Padrão    Padrão        
NAMUR | CHOCOLATE PURO | BARRA    NAMUR     CHOCOLATE PURO | BARRA    | BARRA
NAMUR | CHOCOLATE PURO | BARRA    NAMUR     CHOCOLATE PURO | BARRA    | BARRA
NAMUR | CHOCOLATE PURO | BARRA    NAMUR     CHOCOLATE PURO | BARRA    | BARRA
NAMUR | CHOCOLATE PURO | BARRA    NAMUR     CHOCOLATE PURO | BARRA    | BARRA
SUPREME | COBERTURA | BARRA    SUPREME     COBERTURA | BARRA    A | BARRA

com esse script.

select [Subgrupo de Item Descrição],
--primeira coluna
iif(charindex('|',[Subgrupo de Item Descrição]) = '0', [Subgrupo de Item Descrição],
          left([Subgrupo de Item Descrição], CHARINDEX('|', [Subgrupo de Item Descrição])-2)) as FABRICANTE, 

--segunda coluna
          iif(charindex('|',[Subgrupo de Item Descrição]) = '0', '',
          substring([Subgrupo de Item Descrição],2+CHARINDEX(' |', [Subgrupo de Item Descrição]),len([Subgrupo de Item Descrição])-CHARINDEX('|', [Subgrupo de Item Descrição]))) as  CATEGORIA,

--terceira coluna          
iif(charindex('|',[Subgrupo de Item Descrição]) = '0','',
          right([Subgrupo de Item Descrição], CHARINDEX('|', [Subgrupo de Item Descrição])))as SUB
from [dbo].[BD_RECEBIMENTO]

Alguém pode me ajudar nesta questão. 

o RESULTADO que eu estou esperando é esse abaixo na tabela

FABRICANTE CATEGORIA SUB
SUPREME   MATERIAL DE PDV   MPDV
SUPREME   MATERIAL DE PDV   MPDV
NAMUR   MATERIAL DE PDV   MPDV
Padrão    
NAMUR   CHOCOLATE PURO   BARRA
NAMUR   CHOCOLATE PURO   BARRA
NAMUR   CHOCOLATE PURO   BARRA
NAMUR   CHOCOLATE PURO   BARRA
SUPREME   COBERTURA   BARRA

 

Obrigado.

 

 

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...