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 + 1, 1));
    if i = 11 and substr(srmb, 1, 1) = '万' then
    srmb := case when substr(srmb, 2, 1) not 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 (3, 7, 11, 15) then
    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;

  • 相关阅读:
    tcl tk lappend
    file join
    [转载]强指针和弱指针
    DisplayHardware
    Android 十大调试方法
    C语言程序的外部变量与函数
    DisplayHardware
    Android 十大调试方法
    wifi连接流程分析
    [转载]强指针和弱指针
  • 原文地址:https://www.cnblogs.com/accumulater/p/6145150.html
Copyright © 2011-2022 走看看