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çãoFABRICANTECATEGORIASUB
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
Pergunta
Jose Eduardo Fernandes
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
Obrigado.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.