报表中用到中文大写日期,写一函数

ALTER FUNCTION GetCNDay
(@dt Datetime
)
RETURNS Nvarchar(50)
AS
BEGINDECLARE @str Nvarchar(50)--中间字符串,用于存储第一次转换之后的日期字符DECLARE @Year Int,@Month Int,@Day Int---获取函数传入的时间参数的年月日的值DECLARE @strYear Nvarchar(50),@strMonth Nvarchar(50),@strDay Nvarchar(50)--中间字符串,分别用于存储第一次转换之后的年月日字符串declare @e Nvarchar(10),@n Nvarchar(10),@index Int,@result Nvarchar(50)--@e,@n和@index用于字符串比对,将@e中@index位置出现的字符替换成@n中@index位置的字符,@result用于存储最终处理完成的日期字符串,并作为返回结果SELECT @e='0123456789',@n='〇一二三四五六七八九',@index=1SET @Year = Year(@dt)SET @Month = Month(@dt)SET @Day = Day(@dt)--生成年SET @strYear = Cast(@Year AS Nvarchar(50)) + '年'--生成月IF(@Month < 10)SET @strMonth = Cast(@Month AS Nvarchar(50))ELSE IF(@Month = 10)SET @strMonth = '十'ELSE IF(@Month > 10)SET @strMonth = '十' + Cast((@Month - 10) AS Nvarchar(50))SET @strMonth = @strMonth + '月'--生成日IF(@Day < 10)SET @strDay = Cast(@Day AS Nvarchar(50))ELSE IF(@Day = 10)SET @strDay = '十'ELSE IF(@Day > 10 AND @Day < 20)SET @strDay = '十' + Cast((@Day - 10) AS Nvarchar(50))ELSE IF(@Day = 20)SET @strDay = '二十'ELSE IF(@Day > 20 AND @Day < 30)SET @strDay = '二十' + Cast((@Day - 20) AS Nvarchar(50))ELSE IF(@Day = 30)SET @strDay = '三十'ELSE IF(@Day = 31)SET @strDay = '三十一'SET @strDay = @strDay + '日'--拼接年月日SET @str = @strYear + @strMonth + @strDayWHILE @index<=Len(@str)BEGINDECLARE @s Nvarchar(1)SET @s=SubString(@str,@index,1)IF CharIndex(@s,@e)>0SET @result=IsNull(@result,'')+SubString(@n,CharIndex(@s,@e),1)ELSESET @result=IsNull(@result,'')+@sSET @index=@index+1END    RETURN @resultEND
GO

sql日期中文大写显示相关推荐

  1. JavaScript票据出票日期中文大写填写规范

    说明: 本程序用JavaScript语言编写.转换方法遵照中国人民银行关于银行支票中票据出票日期的中文大写填写规范的相关规定. 中国人民银行规定的银行支票中关于中文大写填写规范的相关规定: 1.财政部 ...

  2. pl/sql developer 中文字段显示乱码

    在windows中创 建一个名为"NLS_LANG"的系统环境变量,设置其值为"SIMPLIFIED CHINESE_CHINA.ZHS16GBK",然后重新启 ...

  3. php数字转换百千万,PHP数字金额转换成中文大写显示

    整个功能其实不难,只是还算挺实用,所以记一下哈,其他编程语言转换一下也是能可以的! 思路:把传过来的金额转换成整数和小数两部分,再对其分别进行转换处理 代码附上: function moneyToSt ...

  4. php显示大写金额,PHP数字金额转换成中文大写显示

    整个功能其实不难,只是还算挺实用,所以记一下哈,其他编程语言转换一下也是能可以的! 思路:把传过来的金额转换成整数和小数两部分,再对其分别进行转换处理 代码附上: function moneyToSt ...

  5. php 把数字变成大写数字,PHP数字金额转换成中文大写显示

    整个功能其实不难,只是还算挺实用,所以记一下哈,其他编程语言转换一下也是能可以的! 思路:把传过来的金额转换成整数和小数两部分,再对其分别进行转换处理 代码附上: function moneyToSt ...

  6. oracle查询数据都是问号,Oracle数据库PL/SQL Developer查询结果显示问号乱码的解决方法...

    PL SQL Developer,查询结果中的中文变成了一堆问号,SQL语句中的中文被提示invalid character,不能识别. 解决方法: 执行,select userenv('langua ...

  7. Excel日期转换为大写中文数字

    主要解答者: Yiqun_Zhao 首先我们可以知道的是:数字可以转换成中文大写数字,日期型其实也就是数字格式的一种特殊形式,因此只要对该日期设置成恰当的数字格式即可实现显示中文大写数字格式的日期,具 ...

  8. C#中把货币、日期转换成中文大写

    日期转换代码如下: /**//// <summary> /// 日期转换为中文大写 /// </summary> public class UpperConvert {     ...

  9. POI设置EXCEL单元格格式为文本、小数、百分比、货币、日期、科学计数法和中文大写...

    再读本篇文章之前,请先看我的前一篇文章,前一篇文章中有重点讲到POI设置EXCEL单元格格式为文本格式,剩下的设置小数.百分比.货币.日期.科学计数法和中文大写这些将在下面一一写出 以下将要介绍的每一 ...

  10. .sql导入中文显示乱码解决方法

    .sql导入中文显示乱码解决方法 参考文章: (1).sql导入中文显示乱码解决方法 (2)https://www.cnblogs.com/fnote/p/8051682.html 备忘一下.

最新文章

  1. 计算机网络分为两大阶段,【多选题】计算机网络的发展分为哪些阶段?() A. 远程终端联机阶段 B. 计算机网络阶段 C. 计算机网络互联阶段 D. 信息高速公路阶段...
  2. CCF 2019年题目题解 - Python
  3. 新一代视频AI服务 —— 阿里云智能视觉重磅发布
  4. 高速率AVS整数变换的汇编实现与优化
  5. 第一个Verilog程序
  6. 语义分析的方法简述之文本基本处理
  7. vscode下载提速方法
  8. php的get和post,PHP中GET和POST区别
  9. ExamDiff Pro(电脑文件对比工具)官方正式版V12.0.1.8 | 最好用的文件对比工具之一文件内容对比工具下载
  10. PID控制电机输出作为电机PWM占空比输入的理解
  11. Android 自定义字体
  12. 20190323——Python IO编程
  13. Linux编译simplest_ffmpeg_player
  14. 算法题|-灯泡开关问题
  15. Linux下git操作(一)——git基本命令
  16. java类添加单元测试代码_如何在java中单元测试时跳过一段代码
  17. 零售行业数据分析运用
  18. 多线程相关知识点总结
  19. Nexus中创建仓库时,repository connectors 干嘛的?
  20. checkmarx 9

热门文章

  1. CentOS6.5服务器端口捆绑
  2. sql server 不是可以识别的 内置函数名称
  3. cef 获取 html代码,CefGlue获取网页源代码
  4. 依赖函数检查 mysql_connect()_解决的方法:mysql_connect()不支持请检查mysql模块是否正确载入...
  5. 哥尼斯堡的“七桥问题” (25 分)
  6. Android基站定位详解
  7. 5.学城项目 支付宝支付
  8. c语言使用scanf_s输入时,保存的内容是中文乱码的解决方案
  9. 达龙微信公众号正式改版啦!!!
  10. 我的世界服务器显示空岛等级,mc空岛每种方块等级 | 手游网游页游攻略大全