oracle显示人民币,请问如何讲数字转变为大写人民币格式
FUNCTION AMOUNT_CHANGE(n_yffj NUMBER) RETURN VARCHAR2 IS
v_str VARCHAR2(80);
V_LIU VARCHAR2(80);
V_LENGTH VARCHAR2(50);
v_str1 VARCHAR2(20);
v_chr1 VARCHAR2(1);
v_chr2 VARCHAR2(2);
i NUMBER(2);
j NUMBER(2);
x NUMBER(19,2);
BEGIN
v_str:='';
x := n_yffj; --若小数位超过两位,截断
IF x<0 THEN --判断输入金额是否为负数
BEGIN
RETURN '输入金额小于零, 不能转换!';
END;
END IF;
IF x>= 100000000000 THEN --判断输入金额是否超过最大值
BEGIN
RETURN '输入金额超过最大值, 不能转换!';
END;
END IF;
v_str1 := TO_CHAR(X);
j := NVL(LENGTH(v_str1), 0);
IF SUBSTR(v_str1,j-2,1)<>'.' THEN -- 判断小数点所在位置, 一
-- 律整理小数点后面有两个字符
IF SUBSTR(v_str1,j-1,1)='.' THEN
v_str1:=v_str1||'0';
ELSE
IF SUBSTR(v_str1,j,1)='.' THEN
v_str1:=v_str1||'00';
ELSE
v_str1:=v_str1||'.00';
END IF;
END IF;
END IF;
j := NVL(LENGTH(v_str1), 0)+1;
i := j - 1;
LOOP
v_chr1 := SUBSTR(v_str1,j-i,1);
--将每个数字对应成相应的大写数字
IF v_chr1 = ' ' OR v_chr1 = '0' OR v_chr1 IS NULL
THEN v_chr2 := '零';
ELSIF v_chr1='1' THEN v_chr2 := '壹';
ELSIF v_chr1='2' THEN v_chr2 := '贰';
ELSIF v_chr1='3' THEN v_chr2 := '叁';
ELSIF v_chr1='4' THEN v_chr2 := '肆';
ELSIF v_chr1='5' THEN v_chr2 := '伍';
ELSIF v_chr1='6' THEN v_chr2 := '陆';
ELSIF v_chr1='7' THEN v_chr2 := '柒';
ELSIF v_chr1='8' THEN v_chr2 := '捌';
ELSIF v_chr1='9' THEN v_chr2 := '玖';
ELSE v_chr2 := ' ';
END IF;
--相应的位数对应成元,角,分.
IF I=14 then v_str:=v_str||v_chr2||'佰';
ELSIF I=13 then v_str:=v_str||v_chr2||'拾';
ELSIF I=12 then v_str:=v_str||v_chr2||'亿';
ELSIF I=11 then v_str:=v_str||v_chr2||'仟';
ELSIF I=10 THEN v_str:=v_str||v_chr2||'佰';
ELSIF I=9 THEN v_str:=v_str||v_chr2||'拾';
ELSIF I=8 THEN v_str:=v_str||v_chr2||'万';
ELSIF I=7 THEN v_str:=v_str||v_chr2||'仟';
ELSIF I=6 THEN v_str:=v_str||v_chr2||'佰';
ELSIF I=5 THEN v_str:=v_str||v_chr2||'拾';
ELSIF I=4 THEN v_str:=v_str||v_chr2||'元';
ELSIF I=2 THEN v_str:=v_str||v_chr2||'角';
ELSIF I=1 THEN v_str:=v_str||v_chr2||'分';
END IF;
i := i - 1;
IF i = 0 THEN
EXIT;
END IF;
END LOOP;
/*----------------------------------------*/
v_str:=replace(v_str,'零仟零佰','零佰');
v_str:=replace(v_str,'零仟壹佰','零壹佰');
v_str:=replace(v_str,'零仟貳佰','零貳佰');
v_str:=replace(v_str,'零仟叁佰','零叁佰');
v_str:=replace(v_str,'零仟肆佰','零肆佰');
v_str:=replace(v_str,'零仟伍佰','零伍佰');
v_str:=replace(v_str,'零仟陆佰','零陆佰');
v_str:=replace(v_str,'零仟柒佰','零柒佰');
v_str:=replace(v_str,'零仟捌佰','零捌佰');
v_str:=replace(v_str,'零仟玖佰','零玖佰');
/*----------------------------------------*/
v_str:=replace(v_str,'零佰零拾','零拾');
v_str:=replace(v_str,'零佰壹拾','零壹拾');
v_str:=replace(v_str,'零佰貳拾','零貳拾');
v_str:=replace(v_str,'零佰叁拾','零叁拾');
v_str:=replace(v_str,'零佰肆拾','零肆拾');
v_str:=replace(v_str,'零佰伍拾','零伍拾');
v_str:=replace(v_str,'零佰陆拾','零陆拾');
v_str:=replace(v_str,'零佰柒拾','零柒拾');
v_str:=replace(v_str,'零佰捌拾','零捌拾');
v_str:=replace(v_str,'零佰玖拾','零玖拾');
/*-----------------------------------------*/
v_str:=replace(v_str,'零拾零亿','亿');
v_str:=replace(v_str,'零拾壹亿','零壹亿');
v_str:=replace(v_str,'零拾貳亿','零貳亿');
v_str:=replace(v_str,'零拾叁亿','零叁亿');
v_str:=replace(v_str,'零拾肆亿','零肆亿');
v_str:=replace(v_str,'零拾伍亿','零伍亿');
v_str:=replace(v_str,'零拾陆亿','零陆亿');
v_str:=replace(v_str,'零拾柒亿','零柒亿');
v_str:=replace(v_str,'零拾捌亿','零捌亿');
v_str:=replace(v_str,'零拾玖亿','零玖亿');
v_str:=replace(v_str,'零拾零万','万');
v_str:=replace(v_str,'零拾壹万','零壹万');
v_str:=replace(v_str,'零拾貳万','零貳万');
v_str:=replace(v_str,'零拾叁万','零叁万');
v_str:=replace(v_str,'零拾肆万','零肆万');
v_str:=replace(v_str,'零拾伍万','零伍万');
v_str:=replace(v_str,'零拾陆万','零陆万');
v_str:=replace(v_str,'零拾柒万','零柒万');
v_str:=replace(v_str,'零拾捌万','零捌万');
v_str:=replace(v_str,'零拾玖万','零玖万');
v_str:=replace(v_str,'零拾零元','元');
v_str:=replace(v_str,'零拾壹元','零壹元');
v_str:=replace(v_str,'零拾貳元','零貳元');
v_str:=replace(v_str,'零拾叁元','零叁元');
v_str:=replace(v_str,'零拾肆元','零肆元');
v_str:=replace(v_str,'零拾伍元','零伍元');
v_str:=replace(v_str,'零拾陆元','零陆元');
v_str:=replace(v_str,'零拾柒元','零柒元');
v_str:=replace(v_str,'零拾捌元','零捌元');
v_str:=replace(v_str,'零拾玖元','零玖元');
v_str:=replace(v_str,'零万','万');
v_str:=replace(v_str,'零亿','亿');
v_str:=replace(v_str,'零元','元');
v_str:=replace(v_str,'佰亿','佰亿零');
v_str:=replace(V_STR,'拾亿','拾亿零');
v_str:=replace(V_STR,'仟万','仟万零');
v_str:=replace(v_str,'佰万','佰万零');
v_str:=replace(V_STR,'拾万','拾万零');
/*-----------------------*/
v_str:=replace(v_str,'零角零分','整');
v_str:=replace(v_str,'零角壹分','零壹分');
v_str:=replace(v_str,'零角貳分','零貳分');
v_str:=replace(v_str,'零角叁分','零叁分');
v_str:=replace(v_str,'零角肆分','零壹分');
v_str:=replace(v_str,'零角伍分','零伍分');
v_str:=replace(v_str,'零角陆分','零陆分');
v_str:=replace(v_str,'零角柒分','零柒分');
v_str:=replace(v_str,'零角捌分','零捌分');
v_str:=replace(v_str,'零角玖分','零玖分');
v_str:=replace(v_str,'零拾','');
v_str:=replace(v_str,'零分','');
v_str:=replace(v_str,'零零','零');
v_str:=replace(v_str,'零万','万');
v_str:=replace(v_str,'零亿','亿');
v_str:=replace(v_str,'零元','元');
RETURN v_str; --返回值
END;
oracle显示人民币,请问如何讲数字转变为大写人民币格式相关推荐
- 使用 C# 将数字转换成大写人民币
贴段最近在项目中用到的一个函数. 因涉及到财务,需要把数字符转换成大写人民币汉字,于是自己动手写了一个,使用的算法比较笨,各位看客不要笑啊. 可转换数字大小在10亿以下,超过的,就无能为力了,不过大家 ...
- 数字金额转换为大写人民币汉字
// 数字金额转换为大写人民币汉字convertCurrency (money) {// 汉字的数字var cnNums = ['零', '壹', '贰', '叁', '肆', '伍', '陆', ' ...
- JS将数字金额转换为大写人民币汉字
转载自 qubernet 博客 JS将数字金额转换为大写人民币汉字 function convertCurrency(money) {//汉字的数字var cnNums = new Array('零' ...
- oracle里存储函数将金额数字转换成大写
CREATE OR REPLACE FUNCTION NUMBER_TO_CHINESE(P_NUM IN NUMBER DEFAULT NULL)RETURN NVARCHAR2 IS/*Ver:1 ...
- js将数字金额转换为大写人民币
今天换算律师打官司金额,用到了小写金额转化为大写汉字的问题,这里把具体思路分析一下 1.首先判断输入数值正负问题, 2.其次有小数点部分需要处理,将数值每次乘以10进行拆分,乘10--%10--结果为 ...
- JS实现将数字金额转换为大写人民币汉字
function convertCurrency(money) {//汉字的数字var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒 ...
- 数字转换成大写人民币
a = int(input("请输入一个数字: ")) if a == 0: result = '零圆' else: sub_name = ['零', '壹', ' ...
- 使用JS将数字金额转为大写的人民币
使用JS将数字金额转为大写的人民币 刚好今天有时间写文章,就想到了上次做项目时做到的一个需求,拿出来分享一下. 如何将数字金额转为大写人民币? 一点思路 : 封装方法 列出大写人民币的所需的单位 设置 ...
- 最全长文详述“数字人民币简史”,揭开数字人民币神秘面纱
从2014年央行组织研发到2022年即将来临的冬奥会场景应用,八年来我国数字人民币的发展与数字经济的时代脉搏同频共振,与金融行业的数字化转型同向而行.同时,全球数字货币发展也在助推中国数字人民币进行金 ...
最新文章
- 包含锚点平滑滚动效果/解决锚点链接碰到固定定位问题/导航选中背景变色/固顶/返回顶部效果全...
- Myeclise下tomcat启动报错,启动超时
- 显著性目标检测代码全汇总!(包含2D、3D、4D以及Video)
- 不死鸡和不死牛的故事
- 多线程方式实现Socket通信
- Flex 主窗体给弹出窗体传值
- mysql补充(1)校对集utf8_unicode_ci与utf8_general_ci
- 博客园的BLOG也申请了
- 关于重写equals()与hashCode()
- 手把手Maven搭建SpringMVC+Spring+MyBatis框架(超级详细版)
- 京东健康CEO辛利军:感谢刘强东的战略格局和超前眼光
- 【回文串14】LeetCode 680. Valid Palindrome II
- IPv4中IP地址分类
- 微型计算机系统的几个指标课件,[计算机基础课件67.ppt
- Activiti7 表介绍
- 机器学习之理解支持向量机SVM
- mac pycharm如何打开setting
- python读取excel文本单元格换行符_Excel自文本导入内容时如何做到单元格内换行...
- Ble Mesh技术(一)之概览
- YY语音无有效验证导致下载执行任意程序
热门文章
- python12306下单步骤_python编程实现12306的一个小爬虫实例
- 中国信通院 | 车联网白皮书合集
- Gauss quadrature approximation by Lanczos algorithm
- 为什么静下心来阅读会是一种奢侈?
- 关于MOS管栅极和栅介质(氧化物)的材料选择
- Scrum板与Kanban如何抉择?敏捷工具:opdea板与按照guarbpgz
- 摄像头P2P软件提供,完美解决打洞及音视频、用户码传输问题。
- 批量修改文件后缀名(扩展名格式),操作简单1行命令搞定!
- C语言基础:if语句
- 【TCP】Recv-Q和Send-Q 不要在有什么误解了