Tenta usar a função split_part:
 
SELECT split_part('20,45,15,3',',',1);
retorna '20'
 
SELECT split_part('20,45,15,3',',',2);
retorna '45'
 
SELECT split_part('20,45,15,3',',',1);
retorna '15'
 
SELECT split_part('20,45,15,3',',',1);
retorna '3'
 
SELECT split_part('20,45,15,3',',',1);
retorna ''
 
Então:
 
SELECT split_part( grup_codigoncm, ',', N );
 
Sendo N o número do item que você quer extrair.
 
Atenciosamente,
 
Márcio Gil.



  _____  

De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Em nome de Marcio
Arizon - ocxy
Enviada em: terça-feira, 8 de maio de 2007 00:32
Para: [email protected]
Assunto: [pgbr-geral] Ajuda com SQL (URGENTE na media que você puder me
ajudar hehehehe)


Olá amigos da lista, venho pedir ajuda.
Estou com um situação que ainda não tinha me deparado e venho buscar uma
ajuda.
segue....

----------------------------------------------------------------------------
---- 

Tenho uma tabela chamada PRODUN, onde fica vinculado as informações dos
produtos no caso PRUN_MARGEM
onde a chave é o PRUN_PROD_CODIGO, fazendo assim o vinculo com minha tabela
PRODUTOS.

Na minha tabela PRODUTOS eu tenho o campo PROD_GRUP_CODIGO, que faz o
vinculo com minha tabela GRUPOS 
onde o cliente fez algo que facilitou a vida dele e complicou a minha.

Na tabela GRUPOS ele utilizou um campo chamado GRUP_CODIGONCM (que é um
varchar(10)) e colocou um valor 20,45,15,3
onde esse valor representa a margem que ele quer vincular a todos os
produtos vinculados a este grupo. 

Então o que ocorre eu tenho que transformar esse varchar em numeric ou
inteiro, e vincular a minha margem 
da tabela PRODUN.

Para facilitar um pouco, tentei fazer da seguinte forma, criar um campo
varchar em minha tabela PRODUTOS e depois fazer a update: 
update produtos
set prod_margem=grup_codigoncm
from grupos
where prod_grup_codigo=grup_codigo

Até ai tudo bem, mas quando tendo fazer o update na tabela PRODUN:
update produn
set prun_margem=(select prod_margem :: integer from produtos where
prod_codigo=prun_prod_codigo) 

Eu acho que tem erro pois não acaba nunca.

Então se alguem puder me ajudar fico muito grato.


_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a