- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
人民币小写金额转大写(第二版)
人民币小写金额转大写(第二版)
--人民币小写金额转大写(第二版)
/*
功能:小写金额转换成大写
参数:@LowerMoney 小写金额加上小数点最长可以保留位
输出:大写金额
简介:SQL版小写金额转换成大写金额(最多可以精确到小数点四位)
注: Decimal 数据类型最多可存储个数字
********************************************************/
go
--创建函数
create function [dbo].[lowertoupper](@lowermoney decimal(38,4))
returns varchar(200) --返回的大写金额的字符
as
begin
declare @lowerstr varchar(50) --小写金额
declare @upperstr varchar(200) --大写金额
declare @uppertmp varchar(15) --大写金额的临时字符串
declare @i int --递增量
declare @lowerlen int --小写金额的总长度
set @lowerstr = @lowermoney --把decimal型的值全部赋给字符串变量注:(赋值过去的话如在字符串变量中是显示.0000 因为小数位精确到四位,没有的话,它会自动补)
set @lowerstr = replace(@lowerstr,.,) --把小数点替换成空字符 --精确到小数点的四位角分厘毫
set @lowerlen = len(@lowerstr) --获取小写金额的总长度(包括四个小数位)
select @i = 1,@upperstr = ,@uppertmp = --设置默认初始值
while @i = @lowerlen
begin
set @uppertmp = case
when substring(@lowerstr,@lowerlen - @i + 1,1) = 0 and @i = 5 and (convert(int,right(@lowerstr,4)) = 0 or @lowerlen 5) then 元 --注:如果个位为的话,并且四位小数都是或者它的长度超过(也就是超过元),则为元
--when substring(@lowerstr,@lowerlen - @i + 1,1) = 0 then
else
+ case substring(@lowerstr,@lowerlen - @i + 1,1) --看当前位是数字几,就直接替换成汉字繁体大写
when 0 then 零
when 1 then 壹
when 2 then 贰
when 3 then 叁
when 4 then 肆
when 5 then 伍
when 6 then 陆
when 7 then 柒
when 8 then 捌
原创力文档


文档评论(0)