`

转:SQL Server:将阿拉伯数字的货币形式转换成大写的货币形式

阅读更多

转载链接未知。

以下为转载内容:

--该方法用来将阿拉伯数字的货币形式转换成大写的货币形式
--测试:select dbo.toUppercaseRMB(12131415.21);结果:壹仟贰佰壹拾叁万壹仟肆佰壹拾伍元贰角壹分整

CREATE function [dbo].[toUppercaseRMB] ( @LowerMoney decimal(18,4))
returns varchar(200) 
as    
begin    
   declare @lowerStr varchar(200)    
   declare @UpperStr varchar(200)    
   declare @UpperPart varchar(200)     --长度    
   declare @i int     
       
   set @lowerStr=ltrim(rtrim(convert(decimal(18,2),round(@LowerMoney,2))))    
   set @i=1    
   set @UpperStr=''    
       
   while(@i<=len(@lowerStr))    
   begin    
		select @UpperPart=
		case substring(@lowerStr,len(@lowerStr)-@i+1,1)--取最后一位数
			when  '.' then '元'    
			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 '捌'    
			when  '9' then '玖'    
		end    
        +    
		case @i     
			when 1 then  '分'    
			when 2 then  '角'    
			when 3 then  ''    
			when 4 then  ''    
			when 5 then  '拾'    
			when 6 then  '佰'    
			when 7 then  '仟'    
			when 8 then  '万'    
			when 9 then  '拾'    
			when 10 then '佰'    
			when 11 then '仟'    
			when 12 then '亿'    
			when 13 then '拾'    
			when 14 then '佰'    
			when 15 then '仟'    
			when 16 then '万'    
			else ''    
		end    
		set @UpperStr=@UpperPart+@UpperStr    
		set @i=@i+1    
	end     
	set @UpperStr = REPLACE(@UpperStr,'零拾','零')     
	set @UpperStr = REPLACE(@UpperStr,'零佰','零')     
	set @UpperStr = REPLACE(@UpperStr,'零仟零佰零拾','零')     
	set @UpperStr  = REPLACE(@UpperStr,'零仟','零')    
	set @UpperStr = REPLACE(@UpperStr,'零零零','零')    
	set @UpperStr = REPLACE(@UpperStr,'零零','零')    
	set @UpperStr = REPLACE(@UpperStr,'零角零分','')    
	set @UpperStr = REPLACE(@UpperStr,'零分','')    
	set @UpperStr = REPLACE(@UpperStr,'零角','零')    
	set @UpperStr = REPLACE(@UpperStr,'零亿零万零元','亿元')    
	set @UpperStr = REPLACE(@UpperStr,'亿零万零元','亿元')    
	set @UpperStr = REPLACE(@UpperStr,'零亿零万','亿')    
	set @UpperStr = REPLACE(@UpperStr,'零万零元','万元')    
	set @UpperStr = REPLACE(@UpperStr,'万零元','万元')    
	set @UpperStr = REPLACE(@UpperStr,'零亿','亿')    
	set @UpperStr = REPLACE(@UpperStr,'零万','万')    
	set @UpperStr = REPLACE(@UpperStr,'零元','元')    
	set @UpperStr = REPLACE(@UpperStr,'零零','零')    
	if left(@UpperStr,1)='元'    
		set @UpperStr = REPLACE(@UpperStr,'元','零元')    

  return @UpperStr+'整'    
end

 

分享到:
评论

相关推荐

    sql server阿拉伯数字转大写中文存储过程

    SQL Server 是一个功能强大且广泛应用的关系数据库管理系统,而阿拉伯数字转大写中文是一个常见的需求,例如,在财务报表、发票printing等应用场景中,需要将阿拉伯数字转换为大写中文以满足特定的格式要求。本文将...

    阿拉伯数字转换成中文.sql

    阿拉伯数字转换成中文数字, 例如: 10转换成十,111转换成一百一十一 最高支持的数字单位亿, 再大的话可能需要自己修改

    SQL数字转金额大写函数

    sqlserver数字转金额大写,输入数字返回汉字大写

    sqlServer字段大写转小写.txt

    该Sql语句可将sqlServer表结构字段列名内大写字母转换为小写字母,只需拷贝sql到数据库查询框中执行即可。

    Sqlserver金额转大写函数

    Sqlserver金额大写函数,思路清晰、代码简单。可用于SqlServer各版本中。

    mysql数据库转换成sql server

    将MySQL数据库转换成SQL Server是一项常见的需求,特别是在企业级应用迁移或整合项目中。以下是一些关于如何进行这种转换的关键知识点: 1. **数据迁移工具**: - **SSMA (SQL Server Migration Assistant)**:...

    mysql转化成sql server sql转化成mysql工具

    2. 转换规则应用:根据SQL Server的语法特性,工具会将MySQL的SQL语句转化为相应的SQL Server语法。 3. 数据导出:将MySQL中的数据导出为SQL脚本,或者直接导入到SQL Server中。 4. 验证与调整:迁移后,需要验证...

    SQL关键字转成大写工具

    标题"SQL关键字转成大写工具"所描述的就是这样一个实用程序,它能够方便地将SQL语句中的关键字转换为大写。这个工具主要适用于使用Microsoft SQL Server (MSSQL)的开发者和管理员,它可以通过MSSQL的"工具"菜单下的...

    mysql数据库转换成SQLserver数据库

    "mysql数据库转换成SQLserver数据库"这个主题主要涵盖以下几个关键知识点: 1. **数据迁移**:数据迁移是从一个数据库系统到另一个数据库系统的数据传输过程。在这个过程中,我们需要确保所有数据完整无损地从MySQL...

    SQL Server 2005 ETL 专家系列

    SQL Server 2005 ETL专家系列之一:SQL Server DTS的前世今生 SQL Server 2005 ETL专家系列之二:SQL Server 2005 Integration Service的基本任务 SQL Server 2005 ETL专家系列之三:SQL Server 2005 Integration ...

    mysql 函数,可以将数字转换为中文大写形式

    mysql 函数,可以将数字转换为中文大写形式。大写数字是中国特有的数字书写方式,利用与数字同音的汉字取代数字,以防止数目被涂改。 据考证,大写数字最早是由武则天发明,后经朱元璋改进完善。

    sqlserver金额转大写汉字的函数

    该函数用于将金额转成汉字大写,例如57.91500转换成伍拾柒元玖角贰分整

    SQL Server转换为MySQL工具

    有时,由于业务迁移、成本优化或者技术栈的变化,用户可能需要将SQL Server的数据转换到MySQL中。这时,“SQL Server转换为MySQL工具”就显得尤为重要。 这个工具的主要功能就是帮助用户高效、准确地将SQL Server中...

    SQL Server 2005 ETL专家系列之一:SQL Server DTS的前世今生

    SQL Server 2005 ETL专家系列之一:SQL Server ...本单元将介绍ETL在企业数据管理工作的重要性,同时我们将简单回顾SQL Server 2000的DTS服务,并介绍SQL Server 2005 Integration Service的基本架构以及其基本功能。

    mysql数据库转换成SQLserver工具包

    MySQL到SQL Server转换工具包是针对数据库管理员和开发人员的一款实用工具,它的主要功能是将MySQL数据库结构和数据无缝地迁移到SQL Server环境中。这样的转换对于那些需要在不同数据库系统间进行迁移或整合项目的...

    SQL Server 2008开发新特性系列课程(4):SQL Server可管理性

    SQL Server 2008开发新特性系列课程(4):SQL Server可管理性

    SQL Server 2008抢先看系列:SQL Server可管理性

    SQL Server 2008抢先看系列:SQL Server可管理性

    SQL Server 2005 BI系列课程(12):SQL Server 2008 体验导航

    利用这些资源,学习者可以系统地学习SQL Server 2008的BI功能,并将理论知识转化为实际技能。 总的来说,本课程的目标是帮助用户全面了解SQL Server 2008在商业智能方面的改进,通过实际操作提升数据管理和分析的...

    Sql语法转换为Oracle语法

    这个单元文件很可能是整个程序的主体部分,负责接收SQL Server的SQL语句,解析并转换成Oracle兼容的语法。 以下是具体的SQL语法转换的一些关键点: 1. 数据库对象命名:在SQL Server中,表和列名通常用方括号包围...

    奉上2本SQL Server教程:SQLServer+Microsoft SQL Server超级管理手冊

    奉上2本SQL Server教程:SQLServer+Microsoft SQL Server超级管理手冊 奉 上 2 本 SQL Server 教 程:SQLServer+Microsoft SQL Server 超 级 管 理 手 冊

Global site tag (gtag.js) - Google Analytics