Fórum Varrer uma tabela #253806

08/10/2004

0

Tenho uma tabela com 20.000 itens. Esta tabela tem um campo chamado posicao que é o coração de todo o programa. Acontece, que alguém testando ou querendo fazer qualquer outra coisa, incluiu algumas posicoes em lugar errado. A tabela deve funcionar assim: O formato do campo posicao é o seguinte: XXXX.XX.XX
Sendo que esta mascara, não necessariamente presisa ser totalmente satisfeita, mas a base XXXX, sempre vem, ou seja, eu posso ter:XXXX.XX.XX, ou XXXX.XX ou XXXX, somente assim. O que está acontecendo: Eu tenho uma posição assim:
8421.90.10. Dentro desta posicao eu posso ter qualquer outra posição, desde que o inicial seja: 8421. Ex.: 8421.10.10, 8421.10, posso ter outra posicao 8421.90.10, mas jamais 8425,90.10 ou 7654.10.10, creio que deram para entender. O erro está dando, pois dentro da posicao 8421.90.10, apareceu tipo 4567.90.10, esta é outra posicao, que está em lugar errado. Estou preciso fazer um programa que leia as posicoes e encontre as que estão diferentes. Não sei por onde começar. Tentei com um copy nas quatro primeira posições, mas dentro do WHILE bagunça tudo. Dei um while na tabela para vim lendo posicao a posicao. Alguem me ajuda, pelo menos a ter uma idéia de como fazer? Por onde começar? Grato a todos!


Paulo

Paulo

Responder

Posts

08/10/2004

Paulo_amorim

Olá

Você pode fazer uma query que selecione somente uma família determinada..

SELECT * FROM tabela WHERE
SUBSTR(posicao,1,4) = :pos


Assim vc só terá os que vc quer...
Espero que ajude
Até+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar