Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia! Gostaria de saber se existe alguma solução para o seguinte problema:
Tenho uma tabela onde existem os campos: código, itens e valor, conforme exemplo abaixo:
Analisando o registro referente ao código 002, pode se notar que existem 2 itens separados por ";", o que preciso é dividir esse registro
para cada item, ou seja, teria que ficar conforme o outro exemplo abaixo:
Segue um aplicativo de exemplo caso queiram analisar. Qualquer duvida estou a disposição.
Marcos, utilize a função SubField(). Seu script ficaria mais ou menos assim:
LOAD
SubField(Itens, ';') as Itens,
Codigo,
Valor
Marcos, utilize a função SubField(). Seu script ficaria mais ou menos assim:
LOAD
SubField(Itens, ';') as Itens,
Codigo,
Valor
Usando o seu exemplo:
Exemplo:
LOAD
Codigo,
SubField(Itens, ';') as Itens,
Valor
INLINE [
Codigo, Itens, Valor
001, 11, 50
002, 12;13, 100
];
Agora eu aprendi
Obrigado Yuri! Funcionou aqui.
Outro problema, teria alguma maneira de dividir o valor? Pois no caso ele apenas replicou os registros.
Mas como seria essa divisão? Metade para cada? E se tiver três ou mais itens na mesma linha?
No caso teria que dividir referente a quantidade de itens.
Tente assim:
Valor / (SubStringCount(Itens, ';')+1) as ValorDividido
Agora sim, funcionou perfeitamente! Obrigado mais uma vez Yuri.