Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lfranca

[Resolvido] Varrer um numero de tras pra frente

Recommended Posts

Bom dia, sou iniciante no oracle e estou precisando de ajuda. Gostaria de saber como posso fazer para varrer um numero de tras pra frente. Vou tentar explicar o problema.

 

O usuario digita o numero 1234 5678 (quase como um telefone) com esse numero faço uma consulta na tabela tb_num que contem diversos pre fixos:

 

Tab_num

385 - pref1

496 - pref2

123 - pref3

 

Com isso preciso varrer (de tras pra frente) o numero digitado pelo usuario ate encontrar o prefix. Tenho que fazer isso dentro de um procedure, q recebe esse numero como parametro.

 

Quem puder ajudar, ou ate indicar links q possam me ajudar eu agradeceria muito.

 

Procurando um pouco consegui chegar + - no que estou precisando:

 

For i = 0 ate qtd numeros

Select campo from tabela where campo = SUBSTR('123456789',1,qtd numeros - 1);

next

 

Agora como posso fazer esse for!?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não testei pois fiz direto no edit.

 

No SqlPlus faça

 

set serveroutput on;

 

DECLARE
 VS_LINHA VARCHAR2(10 := '1234567890';

BEGIN
 FOR R IN LENGTH(VS_LINHA)..1
 LOOP
   DBMS_OUTPUT.PUT_LINE(VS_LINH,I,1);
 END LOOP;
END;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.