- 浏览: 1763399 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (520)
- Oracle (10)
- Oracle错误集 (8)
- Oracle安装升级 (15)
- Oracle日常管理 (51)
- Oracle字符集 (7)
- Oracle备份恢复 (24)
- Oracle优化 (4)
- Oracle编程 (52)
- Oracle导入导出 (19)
- Oracle体系结构 (15)
- Oracle网络 (2)
- Oracle安全 (2)
- Oracle权限 (3)
- Oracle数据字典和性能视图 (2)
- Oracle常用地址 (5)
- SQLPLUS专栏 (7)
- SqlServer (13)
- SqlServer2005编程 (27)
- SqlServer2005管理 (15)
- MySQL (20)
- Dorado应用 (1)
- C# (24)
- Arcgis Server开发 (20)
- ArcSDE技术 (19)
- UML学习 (2)
- 设计模式 (2)
- JAVA EE (4)
- JavaScript (3)
- OFBIZ (27)
- JAVA WEB开发 (22)
- Linux&Unix (34)
- SHELL编程 (14)
- C语言 (11)
- 网络协议 (14)
- FREEMARKER (2)
- GROOVY (2)
- JAVA语言 (3)
- 防火墙 (0)
- PHP (2)
- Apache (2)
- Loader Runner (1)
- Nginx (3)
- 数据库理论 (2)
- maven (1)
最新评论
-
怼怼怼怼:
oracle的timestamp类型使用 -
怼怼怼怼:
oracle的timestamp类型使用 -
怼怼怼怼:
oracle的timestamp类型使用 -
pg_guo:
感谢
oracle中查看用户权限 -
xu234234:
5、MapResourceManager控件中添加了两个服务, ...
北京ArcGis Server应用基础培训笔记1
create or replace function F_upper_money(p_num in number default null)
return nvarchar2 is
Result nvarchar2(100);
num_round nvarchar2(100) :=to_char(abs(round(p_num,2)));
num_left nvarchar2(100);
num_right nvarchar2(2);
str1 nchar(10) :='零壹贰叁肆伍陆柒捌玖';
str2 nchar(16) :='元拾佰仟万拾佰仟亿拾佰仟万拾佰仟';
num_pre number(1):=1;
num_current number(1);
num_count number:=0;
begin
if p_num is null then return null;end if;
select to_char(
nvl(substr(to_char(num_round),1,
decode(instr(to_char(num_round),'.'),0,
length(num_round),instr(to_char(num_round),'.')-1)),
0)) into num_left from dual;
select substr(to_char(num_round),
decode(instr(to_char(num_round),'.'),0,
length(num_round)+1,instr(to_char(num_round),'.')+1),2)
into num_right from dual;
if length(num_left)>16 then return '**********'; end if;
if length(num_right)=2 then
if to_number(substr(num_right,1,1))=0 then
result:='零'||substr(str1,to_number(substr(num_right,2,1))+1,1)||'分';
else
result:=substr(str1,to_number(substr(num_right,1,1))+1,1)||'角'||
substr(str1,to_number(substr(num_right,2,1))+1,1)||'分';
end if;
elsif length(num_right)=1 then
result:=substr(str1,to_number(substr(num_right,1,1))+1,1)||'角整';
else
result :='整';
end if;
for i in reverse 1..length(num_left) loop
num_count:=num_count+1;
num_current:=to_number(substr(num_left,i,1));
if num_current>0 then
result:=substr(str1,num_current+1,1)||substr(str2,num_count,1)||result;
else
if mod(num_count-1,4)=0 then
result:=substr(str2,num_count,1)||result;
num_pre:=0;
end if;
if num_pre>0 or length(num_left)=1 then
result:=substr(str1,num_current+1,1)||result;
end if;
end if;
num_pre:=num_current;
end loop;
if p_num<0 then
result:='负'||result;
end if;
return Result;
exception
when others then
raise_application_error(-20001,'数字转换大写出现错误!'||sqlerrm);
end ;
return nvarchar2 is
Result nvarchar2(100);
num_round nvarchar2(100) :=to_char(abs(round(p_num,2)));
num_left nvarchar2(100);
num_right nvarchar2(2);
str1 nchar(10) :='零壹贰叁肆伍陆柒捌玖';
str2 nchar(16) :='元拾佰仟万拾佰仟亿拾佰仟万拾佰仟';
num_pre number(1):=1;
num_current number(1);
num_count number:=0;
begin
if p_num is null then return null;end if;
select to_char(
nvl(substr(to_char(num_round),1,
decode(instr(to_char(num_round),'.'),0,
length(num_round),instr(to_char(num_round),'.')-1)),
0)) into num_left from dual;
select substr(to_char(num_round),
decode(instr(to_char(num_round),'.'),0,
length(num_round)+1,instr(to_char(num_round),'.')+1),2)
into num_right from dual;
if length(num_left)>16 then return '**********'; end if;
if length(num_right)=2 then
if to_number(substr(num_right,1,1))=0 then
result:='零'||substr(str1,to_number(substr(num_right,2,1))+1,1)||'分';
else
result:=substr(str1,to_number(substr(num_right,1,1))+1,1)||'角'||
substr(str1,to_number(substr(num_right,2,1))+1,1)||'分';
end if;
elsif length(num_right)=1 then
result:=substr(str1,to_number(substr(num_right,1,1))+1,1)||'角整';
else
result :='整';
end if;
for i in reverse 1..length(num_left) loop
num_count:=num_count+1;
num_current:=to_number(substr(num_left,i,1));
if num_current>0 then
result:=substr(str1,num_current+1,1)||substr(str2,num_count,1)||result;
else
if mod(num_count-1,4)=0 then
result:=substr(str2,num_count,1)||result;
num_pre:=0;
end if;
if num_pre>0 or length(num_left)=1 then
result:=substr(str1,num_current+1,1)||result;
end if;
end if;
num_pre:=num_current;
end loop;
if p_num<0 then
result:='负'||result;
end if;
return Result;
exception
when others then
raise_application_error(-20001,'数字转换大写出现错误!'||sqlerrm);
end ;
发表评论
-
To_Date函数用法
2014-11-07 11:04 1721spl> select * from emp ... -
Oracle中的MD5加密
2014-02-15 10:18 1465一、技术点 1、 DBMS_OBFUSCATION_TO ... -
oracle行列转换总结
2014-02-15 10:18 1006最近论坛很多人提的问题都与行列转换有关系,所以我对行列转换 ... -
Oracle数据库中的''与NULL的关系
2014-02-15 10:17 1321在Oracle数据库中''与NULL是等价的。均表示空值, ... -
快速删除重复的记录
2014-02-15 10:17 647做项目的时候,一位同事导数据的时候,不小心把一个表中的数据 ... -
Oracle的rownum原理和使用
2014-02-15 10:17 1114Oracle的rownum原理和使用 在Oracle中, ... -
ORACLE中查询某个字段包含回车换行符
2013-04-11 15:42 11286很简单,但是很多人一下估计还不一定知道。 select * ... -
ORACLE触发器(转)
2013-03-06 23:58 1157本篇主要内容如下: ... -
使用forall语句的bulk dml操作
2008-11-13 17:27 3793在oracle 8i或更高版本的forall语句中,oracl ... -
判断俩个值的大小函数sign
2008-11-10 11:13 2935比较大小select decode(sign(变量1-变量2) ... -
Oracle 触发器应用
2008-11-06 15:37 2203触发器是特定事件出现的时候,自动执行的代码块。类似于存储过程, ... -
PLSQL学习笔记
2008-10-23 16:58 2285在网上看到的一个比较好的PLSQL学习笔记,放在这里方便以后查 ... -
Oracle自定义函数实例
2008-10-22 16:35 20098--没有参数的函数 create or replace fun ... -
Oracle自定义类型使用一例
2008-10-22 16:28 4281一、创建自定义类型 create type t_air as ... -
Oracle存储过程实例
2008-10-22 15:30 3522/*不带任何参数存储过程*/ create or replac ... -
Oracle的异常处理
2008-10-22 14:40 3034oracle提供了预定义例外 ... -
识别低效的语句
2008-10-15 09:04 1465SELECT EXECUTIONS , DISK_READS, ... -
wmsys.wm_concat、sys_connect_by_path、自定义函数实现行列转换
2008-10-08 16:35 4474构建测试表: create table TABLE1 ( ... -
PL/SQL Developer使用技巧
2008-10-07 15:18 67191、PL/SQL Developer记住登陆密码 在使用 ... -
Oracle 绑定变量
2008-10-06 10:53 4382在oracle 中,对于一个提交的sql语句,存在两种可选的解 ...
相关推荐
在JavaScript(JS)编程中,有时我们需要将数字格式的人民币金额转换为中文大写的表示方式,这在财务系统或者电商平台上十分常见。人民币大写转换主要用于财务报表、发票和银行单据,确保金额的准确性和规范化。下面...
本主题涉及的是在Delphi中实现人民币大小写的转换功能。在金融和会计领域,正确地将数字金额转换为大写汉字是至关重要的,因为这有助于避免因数字输入错误而引发的财务纠纷。下面我们将深入探讨如何在Delphi中实现这...
### 一、人民币大小写转换功能概述 #### 1. 功能简介 在Delphi开发环境中,通过编写特定的函数可以实现将数字形式的人民币金额转换为中文大写或小写格式的功能。这种功能常用于财务系统、发票打印等应用场景,尤其...
人民币金额大小写转换控件V1.01 控件新增属性: property smallmoney :real;; //小写金额大小 property bigmoney1:string;; //大写金额,符合常规金额规则 property bigmoney2:string;; //大写金额二 函数...
根据提供的信息,我们可以详细解析与人民币金额大小写转换相关的Delphi函数实现,主要涉及两个核心函数:`NtoC` 和 `NumToChar`。 ### 1. 函数 NtoC 的实现 #### 1.1 函数简介 `NtoC` 函数用于将数字(Extended ...
如¥1,680.32,应写成 人民币壹仟陆佰捌拾元零叁角贰分,或者写成人民币壹仟陆佰捌拾元 叁角贰分;又如¥107,000.53,应写成人民币壹拾万柒仟元零伍角 叁分,或者写成人民币壹拾万零柒仟元伍角叁分。 (四)...
动态添加列涉及到DOM操作,而人民币大小写的转换则是处理金融数据本地化的一部分。 首先,我们来详细探讨动态添加列。在网页表格(如HTML的`<table>`元素)中,可能需要根据用户操作或特定业务逻辑动态地增加或减少...
下面一段代码给大家分享php实现人民币大小写转换的方法,具体代码如下所示: <?php header(charset=utf-8;); function numTrmb($num){ $d = array(零, 壹, 贰, 叁, 肆, 伍, 陆, 柒, 捌, 玖); $e = array('元'...
首先,我们需要理解人民币金额的大小写规则。小写金额通常用阿拉伯数字表示,如123456.78元。而大写金额则使用汉字,例如“壹拾贰万叁仟肆佰伍拾陆元柒角捌分”。大写的每个数字对应有特定的汉字,具体对应如下: 1...
本文实例为大家分享了python人民币大小写转换的具体代码,供大家参考,具体内容如下 大家应该都知道,银行打印账单有时候会跟上人民币的阿拉伯数字以及人民币汉字大写写法,转换的过程中有一定的逻辑难度,较为麻烦...
在MySQL数据库中,有时我们需要将数字金额转换成人民币的大写形式,这在财务报表或会计系统中非常常见。为了实现这一需求,我们可以自定义一个函数或者利用现有的字符串处理函数。以下是一个关于如何在MySQL中实现这...
辅助程序功能设计 实例32 使用API函数实现辅助...实例35 人民币大小写金额的转换 实例36 数据的压缩和解压缩 实例37 图像扫描实现 实例38 Flash动画的应用 实例39 键盘模拟器的实现 实例40 AresButtonPro控件的使用
23.人民币大小写转换 24.获取区域颜色值 25.获取活动工作表名 26.获取最后一行行数 27.判断是否连接在线 28.币种转换 29.检验工作表是否有可打印内容 30.查找一字符串(withinstr)在另一字符串中(findstr1)中某一次...
在这个示例中,我们将创建一个基础的HTML结构,并结合Vue的特性来实时计算三种货币(人民币CNY、美元USD和港币HKD)之间的转换值。 首先,我们需要设置HTML结构,这里创建了三个`moneyBox`元素,分别用于显示和输入...
3. **大小写转换过滤器(uppercase, lowercase)** `uppercase`和`lowercase`过滤器分别用于将字符串转换为大写和小写。例如,`{{value | uppercase}}`会将`value`转换为全大写形式。 4. **JSON格式化过滤器(json...
成本核算 【取唯一值】 还在使用<分类汇总>或<小计>功能对数据进行唯一值的繁锁操作吗? 本工具可快捷方便地取任意选中区域的存储格内容为唯一值清单,快捷且高效。 【取产品型号】 功能较在字符串中取数字强大多倍...
【取唯一值】 还在使用<分类汇总>或<小计>功能对数据进行唯一值的繁锁操作吗? 本工具可快捷方便地取任意选中区域的存储格内容为唯一值清单,快捷且高效。 【取产品型号】 功能较在字符串中取数字强大多倍。能批量...
- 在过滤器中,你可以根据业务需求对传入的数据进行任意处理,例如格式化数字、转换字符串大小写等。 - 如果需要在多个地方使用同一个数据处理逻辑,使用过滤器可以避免代码重复,提高代码复用性。 - 过滤器可以链式...