SQL> select reverse('123456789') from dual;
REVERSE('
---------
987654321
SQL> select reverse('bom dia!') from dual;
REVERSE(
--------
!aid mob
SQL> select reverse('GLUFKE') from dual;
REVERS
------
EKFULG
Curiosidade - função REVERSE
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Taí uma função não documentada:
-
- Rank: Estagiário Sênior
- Mensagens: 8
- Registrado em: Qui, 19 Ago 2004 9:45 am
- Localização: Angola
- Contato:
Charles Mafra
Oracle Developer
Oracle Developer
Reverse também pode ser usado para um LOOP ser percorrido do valor mais alto para o mais baixo, como no exemplo...
Bom não conhecia o comando REVERSE como mencionado anteriormente, como este é um Fórum de PL/SQL, lembrei deste.
1 BEGIN
2 for x in REVERSE 1..10 LOOP
3 DBMS_OUTPUT.PUT_LINE('VALOR DE X ='||X);
4 END LOOP;
5* END;
SQL> /
VALOR DE X =10
VALOR DE X =9
VALOR DE X =8
VALOR DE X =7
VALOR DE X =6
VALOR DE X =5
VALOR DE X =4
VALOR DE X =3
VALOR DE X =2
VALOR DE X =1
Procedimento de PL/SQL concluído com êxito.
-
- Rank: Estagiário Sênior
- Mensagens: 12
- Registrado em: Seg, 18 Ago 2014 3:51 pm
O interessante é que o reverse não funciona assim:
Relatório de erros -
ORA-06550: linha 8, coluna 15:
PLS-00201: o identificador 'REVERSE' deve ser declarado
ORA-06550: linha 8, coluna 2:
declare
v_campo varchar2(20);
v_inverte varchar2(20);
Begin
v_campo := 'Teste de inversão';
v_inverte := reverse(v_campo);
dbms_output.put_line(v_inverte);
End;
ORA-06550: linha 8, coluna 15:
PLS-00201: o identificador 'REVERSE' deve ser declarado
ORA-06550: linha 8, coluna 2:
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes