日期:2014-05-17  浏览次数:20774 次

急求:储存过程问题(20分)
当输入20个字符以内的数据时就自动输出时是调转的效果!
例子:123...会变成...321或者你好会变成好你.
这样的储存过程怎样写?

------解决方案--------------------
CREATE OR REPLACE FUNCTION f_back_str(in_str IN VARCHAR2)
RETURN VARCHAR2
IS
v_back_str VARCHAR2(500);
v_mid_str VARCHAR2(20);
v_count NUMBER(10);
BEGIN
v_count:=length(in_str);
IF v_count <20 THEN
FOR i IN 1..v_count LOOP
v_back_str:=substr(in_str,i,1) || v_back_str;
END LOOP;
ELSE
v_back_str:=in_str;
END IF;
RETURN v_back_str;
END f_back_str;
/

SQL> SELECT f_back_str( 'csdn程序员论坛 ') FROM dual;

F_BACK_STR( 'CSDN程序员论坛 ')
--------------------------------------------
坛论员序程ndsc