DECLARE v_string VARCHAR2(1000); v_reverse VARCHAR2(1000); BEGIN v_string:='fox infotech'; FOR n IN REVERSE 1 .. LENGTH(v_string)LOOP v_reverse:=v_reverse || SUBSTR(v_string、n、1);ループを終了します。 DBMS_OUTPUT.put_line(v_reverse); END;
/次のように、上記のPLSQLブロックの独自の関数を作成できます。 CREATE OR REPLACE FUNCTION my_reverse(v_string IN VARCHAR2)RETURN VARCHAR2IS v_reverse VARCHAR2(4000); BEGIN FOR n IN REVERSE 1 .. LENGTH(v_string)LOOP v_reverse:=v_reverse || SUBSTR(v_string、n、1);ループを終了します。 RETURN(v_reverse);他の人が戻るときの例外(''); END; /
クエリでこの関数を使用します:
SELECT my_reverse('fox infotech')FROM DUAL;