此方法只支持sql server 2016以上的版本。给大家抛砖引玉。如有不足之处,欢迎发消息,讨论。

declare @ChineseString nvarchar(max)='{"0":"零","1":"一","2":"二","3":"三","4":"四","5":"五","6":"六","7":"七","8":"八","9":"九","10":"十"}'

,@_NowDate datetime=sysdatetime()

,@StringLen int=1

,@YearChinese nchar(4)=''

,@Year char(4);

declare @ChineseTable table(

id tinyint,

chinesestring nchar(3)

)

insert into @ChineseTable

select [key],value from openjson(@ChineseString);

set @Year=YEAR(@_NowDate);

set @StringLen=11;

set @ChineseString='';

while(@StringLen<60)

begin

set @ChineseString=@ChineseString+concat('"',@StringLen,'":"', (iif(left(@StringLen,1)=1,'',( select trim(chinesestring) from @ChineseTable where id=left(@StringLen,1)))),'十',iif(right(@StringLen,1)=0,'', (select trim(chinesestring) from @ChineseTable where id=right(@StringLen,1) )),'",');

set @StringLen+=1;

end

insert into @ChineseTable

select [key],value from openjson( '{'+substring(@ChineseString,1,len(@ChineseString)-1)+'}');

set @StringLen=1;

while(@StringLen<=len(@Year))

begin

select @YearChinese=trim(@YearChinese)+chinesestring from @ChineseTable where id=cast(SUBSTRING(@Year,@StringLen,1) as tinyint);

set @StringLen+=1;

end

select @YearChinese +'年'+trim((select chinesestring from

@ChineseTable

where id=month(@_NowDate)))+'月'+trim( (select chinesestring from

@ChineseTable

where id=day(@_NowDate)))+'日 '+

trim( (select chinesestring from

@ChineseTable

where id=datename(hh, @_NowDate)))+'点'

+

trim( (select chinesestring from

@ChineseTable

where id=datename(MINUTE, @_NowDate)))+'分'

+

trim( (select chinesestring from

@ChineseTable

where id=datename(MINUTE, @_NowDate)))+'秒'

sql server 将日期时间转为中文大写日期相关推荐

  1. SQL日期时间转为字符串

    SQL日期时间转为字符串 SELECTCONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM SELECTCONVERT(varchar(100 ...

  2. sql server中datetime默认值设置和日期函数

    sql server中datetime默认值设置和日期函数 select CONVERT(varchar, getdate(), 120 )         -----------------> ...

  3. 在SQL server中设置时间格式

    在SQL server中设置时间格式 2008-01-13 12:21:02 今天在vs中更新sqlserver,却发现我vs中是当前时间,insert到数据库中却变成了1905年,搞了半天,原来是s ...

  4. 小写金额转为中文大写

    目标 将小写的金额转化为中文大写,如99.99转为"玖拾玖圆玖角玖分" 思路 阿拉伯数字有对应的中文大写,需要将其转为中文大写. 金额分为小数部分和整数部分分别处理,整数部分和小数 ...

  5. 将数字0-9转为中文大写数字

    //转为中文大写数字 var n = 230 var fraction = ["角", "分"]; var digit = ["零", &q ...

  6. python按年月日输出字符串_python日期时间转为字符串或者格式化输出的实例

    python日期时间转为字符串或者格式化输出的实例 如下所示: 年月日时分秒 >>> print datetime.datetime.now().strftime("%Y- ...

  7. js收据、发票等表格数据格式化,js把数字转为中文大写

    1.表格金额格式化 /*** 把金额转为发票.收据等表格能遍历显示的数据* * @param {money} Numner 金额大小* @param {max} Numner 带(角.分的位数)* 例 ...

  8. SQL Server:查找周开始和结束日期时间

    目录 介绍 周默认开始日 设置周开始日 1.设置'DATEFIRST' 2.设置'DATEFIRST'并在任何逻辑操作后恢复为默认值 自定义助手函数 周函数 使用函数 参考 下载源代码 - 1.6 K ...

  9. SQL SERVER中Datetime时间的范围与.net的DateTime对象的区别

    对于编写.net程序中我们一般写默认的时间,我们会自动创建一个new DateTime()对象.但与SQL SERVER连用我们就会出现一个时间范围的问题. 今天我就记录一下该时间问题. 我们创建的n ...

最新文章

  1. 如何创建 java虚拟机_Java虚拟机如何创建对象?
  2. 怎样打开win7和vista系统的telnet服务
  3. c语言点阵字符,点阵的汉字程序
  4. NoSQL入门第一天——NoSQL入门与基本概述
  5. 466. 统计重复个数 golang[转]
  6. poj1050最大子矩阵和
  7. 优秀程序员写代码一定会用的 11 条经验!
  8. OpenERP 中的on_change方法总结
  9. Java thread 怎么用_Java Thread 的使用
  10. matlab寻找直线_matlab寻找直线_Matlab 霍夫变换 ( Hough Transform) 直线检测
  11. php读取execl 实例,php读取excel的实例代码
  12. spa文件转换html,前端微服务化解决方案2 - Single-SPA
  13. Ubuntu常用软件下载以及视频流裁剪转码获取教程(可直接下载油管、B站、优酷等视频资源!)
  14. 【OpenCV 例程300篇】202. 查表快速替换(cv.LUT)
  15. PHP将淘宝客链接转换提取成普通淘宝链接
  16. 【DFT】可测性设计(一)扫描测试
  17. 应用于语义分割问题的深度学习技术综述(语义分割综述)
  18. python监控短信_利用Python实现手机短信监控通知的方法
  19. 项目使用Spring Cloud做配置管理
  20. 参加Kaggle比赛的流程

热门文章

  1. 使用mspaint改变图片大小的一个小技巧记录
  2. 2011年电赛综合测评
  3. 计算机管理服务游戏,Win10全新任务管理器上线:专为PC游戏优化
  4. 大比拼:讯飞星火大模型将超越ChatGPT?
  5. Redis简记之二———持久化
  6. java实现根据名单进行随机的小组分组。
  7. 业务流程和业务逻辑的区别
  8. 打印机扫描文件到电脑提示找不到路径的解决办法
  9. 白泽知识讲堂 | printf漏洞介绍
  10. BigBrother的大数据之旅 Day 5 负载均衡