zoukankan      html  css  js  c++  java
  • 金额大小写转换(3)

    declare
        je    
    number := 1000000000100000.01;
        snum  
    varchar2(30) := to_char(round(abs(je * 100)));
        
    len   pls_integer := length(snum);
        sch   
    varchar2(30) := '壹贰叁肆伍陆柒捌玖';
        sjin  
    varchar2(80) := '分角圆拾佰仟万拾佰仟亿拾佰仟万拾佰仟';
        srmb  
    varchar2(100) := '';
        num   pls_integer;
        flage boolean :
    = true;
    begin
        
    for i in 1 .. len
        loop
            num :
    = to_number(substr(snum, len - i + 11));
            
    if i = 11 and substr(srmb, 11= '' then
                srmb :
    = case when substr(srmb, 21not in (''''then '' end || substr(srmb, 2);
            
    end if;
            
    if num > 0 then
                srmb  :
    = substr(sch, num, 1|| substr(sjin, i, 1|| srmb;
                flage :
    = true;
            elsif i 
    in (371115then
                srmb  :
    = substr(sjin, i, 1|| srmb;
                flage :
    = false;
            elsif flage 
    then
                srmb  :
    = case when i = 1 then '' else '' || srmb end;
                flage :
    = false;
            
    end if;
        
    end loop;
        
    if je < 0 then
            srmb :
    = '' || srmb;
        
    end if;
        dbms_output.put_line(srmb);
    end;


             

                成长

           /      |     \

        学习   总结   分享

    QQ交流群:122230156

  • 相关阅读:
    动态加载配置文件
    Split Full Name as First and Last
    MM03物料主数据视图中某些视图或者某些字段的控制方法
    如何用《老友记》学英语?
    FOR ALL ENTRIES IN的用法
    [转载]MBEWH表数据更新逻辑
    如何学习《六人行》??
    英语口语练习方法
    SAP收货时自动创建采购订单
    BAPI_PO_CREATE1 创建采购订单时价格的处理函数
  • 原文地址:https://www.cnblogs.com/benio/p/1923251.html
Copyright © 2011-2022 走看看