oracle数字反转
求oraclepl/sql编写的数字反转程序,要求用循环实现,比如数字为45687,反转后输出78654,各位大侠小弟在这先谢谢了,写的好带注释的话,还会多送分....
求oracle pl/sql 编写的数字反转程序,要求用循环实现,比如数字为45687,反转后输出78654,各位大侠小弟在这先谢谢了,写的好带注释的话,还会多送分.
展开
1个回答
展开全部
create or replace procedure p_turn(
as_str varchar2)
as
ln_count number(10) ;
ls_str varchar2(2000);
begin
ln_count := length(as_str) ;
ls_str := '' ;
for ln in 0 .. ln_count-1 loop
ls_str := ls_str || substr(as_str, ln_count-ln, 1) ;
end loop ;
dbms_output.put_line(ls_str);
end;
这个是纯字符处理问题,其实用function实现比用procedure实现更好。
这个可以处理任何字符包括数字,如果确定是数字的话,处理完自己增加一个to_number()的转换就可以了,我不写了
as_str varchar2)
as
ln_count number(10) ;
ls_str varchar2(2000);
begin
ln_count := length(as_str) ;
ls_str := '' ;
for ln in 0 .. ln_count-1 loop
ls_str := ls_str || substr(as_str, ln_count-ln, 1) ;
end loop ;
dbms_output.put_line(ls_str);
end;
这个是纯字符处理问题,其实用function实现比用procedure实现更好。
这个可以处理任何字符包括数字,如果确定是数字的话,处理完自己增加一个to_number()的转换就可以了,我不写了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询