首页 / MYSQL / 用PLSQL将整数实现逆序
用PLSQL将整数实现逆序
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了用PLSQL将整数实现逆序,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2747字,纯文字阅读大概需要4分钟。
内容图文
用PLSQL将整数实现逆序,比如123转换为321 无 /* Formatted on 2015/7/15 14:56:34 (QP5 v5.163.1008.3004) */CREATE OR REPLACE FUNCTION get_reverse_value (id IN NUMBER) RETURN VARCHAR2IS ls_id VARCHAR2 (10); ls_last_item VARCHAR2 (10); ls_curr_it
用PLSQL将整数实现逆序, 比如 123 转换为 321 <无>/* Formatted on 2015/7/15 14:56:34 (QP5 v5.163.1008.3004) */ CREATE OR REPLACE FUNCTION get_reverse_value (id IN NUMBER) RETURN VARCHAR2 IS ls_id VARCHAR2 (10); ls_last_item VARCHAR2 (10); ls_curr_item VARCHAR2 (10); ls_zero VARCHAR2 (10); li_len INTEGER; lb_stop BOOLEAN; BEGIN ls_id := TO_CHAR (id); li_len := LENGTH (ls_id); ls_last_item := ''; ls_zero := ''; lb_stop := FALSE; WHILE li_len > 0 LOOP ls_curr_item := SUBSTR (ls_id, li_len, 1); IF ls_curr_item = '0' AND lb_stop = FALSE THEN ls_zero := ls_zero || ls_curr_item; ELSE lb_stop := TRUE; ls_last_item := ls_last_item || ls_curr_item; END IF; ls_id := SUBSTR (ls_id, 1, li_len - 1); li_len := LENGTH (ls_id); END LOOP; RETURN (ls_last_item || ls_zero); END get_reverse_value; /* 此程序如下:例如 123 循环1: ls_curr_item=3, ls_last_item= '||3=3, ls_id=12, li_en=2 循环2:ls_curr_item=2, ls_last_item=3||2=32, ls_id=1, li_en=1 循环3:ls_curr_item=1, ls_last_item=32||1=321, ls_id='', li_en=0 此时 li_en=0 跳出循环,返回 ls_last_item=321 例如100 循环1: ls_curr_item=0, ls_zero= ''||0=0, ls_id=20, li_en=2 循环2:ls_curr_item=0, ls_zero=0||0=00, ls_id=1, li_en=1 循环3:ls_curr_item=1, ls_last_item=''||1=1, ls_id='', li_en=0 此时 li_en=0 跳出循环,返回 ls_last_item=1,ls_zero=00,ls_last_item || ls_zero=100 */ //运行结果为 SQL> select * from rebuild_test_cf where name < 20; ID NAME ---------- ---------- 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 ID NAME ---------- ---------- 21 12 31 13 41 14 51 15 61 16 71 17 81 18 91 19 无>
内容总结
以上是互联网集市为您收集整理的用PLSQL将整数实现逆序全部内容,希望文章能够帮你解决用PLSQL将整数实现逆序所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。