A procedure to Reverse a String in PL/SQL

后端 未结 6 904
猫巷女王i
猫巷女王i 2020-12-22 03:11

I just started learning PL/SQL and I\'m not sure how to create a procedure. The logic seems about right but I think there\'s some syntactical mistake in the first line. Here

6条回答
  •  渐次进展
    2020-12-22 03:35

    Another solution reverse string minimizing loop count

    DECLARE
    v_str     VARCHAR2(100) DEFAULT 'MYSTRING';
    v_len     NUMBER;
    v_left    VARCHAR2(100);
    v_right   VARCHAR2(100);
    BEGIN
        v_len := LENGTH(v_str)/2;
        FOR rec IN 1..v_len 
        LOOP
          v_left := substr(v_str,rec,1) || v_left;
          IF rec * 2 <= LENGTH(v_str) THEN
            v_right := v_right || substr(v_str,-rec,1);
          END IF;
        END LOOP;
        v_str := v_right || v_left;
        dbms_output.put_line(v_str);
    END;
    

提交回复
热议问题