以下脚本转至互联网,增加了自己需要的功能并改成了函数的方式

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: 互联网
-- Create date: 2020年3月9日
-- Description: 数字转中文字符串
-- =============================================
CREATE function [dbo].[ConvertNumToChinese]
(@instr varchar(2))
returns varchar(2)
as
begin
declare @temStr varchar(2)
if @instr = '1' set @temStr = '一'
if @instr ='2' set @temStr = '二'
if @instr ='3' set @temStr = '三'
if @instr ='4' set @temStr = '四'
if @instr ='5' set @temStr = '五'
if @instr ='6' set @temStr = '六'
if @instr ='7' set @temStr = '七'
if @instr ='8' set @temStr = '八'
if @instr ='9' set @temStr = '九'
if @instr ='0' set @temStr = '零'
return @temstr
end
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: 互联网
-- Create date: 2020年3月9日
-- Description: 日期转中文字符串
-- =============================================
CREATE function [dbo].[ConvertDateToChinese]
(@vdate datetime,@NoDay int)
returns varchar(50)
as
begin
declare @vYear varchar(20)
declare @vMonth varchar(20)
declare @vDay varchar(20)
declare @temstr varchar(100) set @temstr = ''
set @vYear = datename(yyyy,@vdate)
--print @vyear
set @vMonth = datename(mm,@vdate)
--print @vMonth
set @vDay = datename(dd,@vdate)
--print 'v'+@vDay
-- 开始计算年份
set @temstr = dbo.convertNumToChinese(substring(@vYear,1,1))
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vYear,2,1))
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vYear,3,1))
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vYear,4,1))
set @temstr = @temstr + '年' -- 开始计算月份
if substring(@vMonth,1,1) = '0'
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vMonth,2,1))
else
begin
if substring(@vMonth,2,1) = '0'
set @temstr = @temstr + '十'
else
set @temstr = @temstr +'十'+ dbo.convertNumToChinese(substring(@vMonth,2,1))
end
set @temstr = @temstr + '月' if (@NoDay=1)
begin
-- 开始计算日期
if convert(int,@vDay) < 10
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vDay,1,1))
else
begin
if substring(@vDay,2,1) = '0'
begin
if substring(@vDay,1,1)<> '1'
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vDay,1,1)) + '十'
else
set @temstr = @temstr + '十'
end
else
begin
if substring(@vDay,1,1) <> '1'
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vDay,1,1)) + '十' + dbo.convertNumToChinese(substring(@vDay,2,1))
else
set @temstr = @temstr + '十' + dbo.convertNumToChinese(substring(@vDay,2,1))
end
end
set @temstr = @temstr + '日'
end
return @temstr
end
GO

  

 --调用方式有两种
--获取截止月份的字符串
select dbo.ConvertDateToChinese(GETDATE(),0)
--获取完整日期字符串
select dbo.ConvertDateToChinese(GETDATE(),1)

Sql Server日期转汉字字符串的更多相关文章

  1. sql server日期时间转字符串

    一.sql server日期时间函数Sql Server中的日期与时间函数 1.  当前系统日期.时间     select getdate()  2. dateadd  在向指定日期加上一段时间的基 ...

  2. sql server日期时间转字符串(转)

    一.sql server日期时间函数Sql Server中的日期与时间函数 1.  当前系统日期.时间     select getdate()  2. dateadd  在向指定日期加上一段时间的基 ...

  3. sql server 日期时间与字符串的转换

    一.sql server日期时间函数Sql Server中的日期与时间函数 1.  当前系统日期.时间     select getdate()  2. dateadd  在向指定日期加上一段时间的基 ...

  4. SQL Server 日期转换到字符串

    0 Feb 22 2006 4:26PM CONVERT(CHAR(19),   CURRENT_TIMESTAMP, 0) 1 02/22/06 CONVERT(CHAR(8),   CURRENT ...

  5. SQL Server 日期转换成字符串

    参考网址:http://wenku.baidu.com/view/970c6c1655270722192ef70e.html 下面是常用的几个 --返回06-27-13 ), ) --2013-06- ...

  6. SQL Server日期时间格式转换字符串详解 (详询请加qq:2085920154)

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

  7. SQL Server日期时间格式转换字符串

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

  8. SQL Server日期与字符串之间的转换

    本文导读:在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.下面主要就介绍一下SQL Serv ...

  9. SQL Server日期时间格式转换字符串详解

    本文我们主要介绍了SQL Server日期时间格式转换字符串的相关知识,并给出了大量实例对其各个参数进行对比说明,希望能够对您有所帮助. 在SQL Server数据库中,SQL Server日期时间格 ...

  10. sql server 日期

    在SQL Server数据库中,SQL Server日期时间格式转换字符串可以改变SQL Server日期和时间的格式,是每个SQL数据库用户都应该掌握的.本文我们主要就介绍一下SQL Server日 ...

随机推荐

  1. JS中如何删除某个父元素下的所有子元素?

    JS中如何删除某个父元素下的所有子元素?这里我介绍几种方法: 1.通过元素的 innerHTML 属性来删除 这种方式我觉得是最有方便的,直接找到你想要的父元素,直接令其 element.innerH ...

  2. csrf跨站请求伪造、csrf相关装饰器、auth认证模块、基于django中间件设计项目功能

    目录 csrf跨站请求网站 什么是csrf跨站请求网站 经典例子-钓鱼网站 模拟 如何避免这种现象(预防) 如何在django中解决这个问题 form表单 ajax csrf相关装饰器 FBV CBV ...

  3. 三门问题模拟对比试验——附VB6和Python3源程序及EXE文件

    三门问题模拟对比试验 [直接跳转到文件下载] 前言 "三门问题"是一个很有意思的概率论问题,涉及贝叶斯公式,是人工智能领域的一个经典问题. 为了直观地研究这个问题,也为了测试一下P ...

  4. C++ "链链"不忘@必有回响之单链表

    1. 前言 数组和链表是数据结构的基石,是逻辑上可描述.物理结构真实存在的具体数据结构.其它的数据结构往往在此基础上赋予不同的数据操作语义,如栈先进后出,队列先进先出-- 数组中的所有数据存储在一片连 ...

  5. [GWCTF 2019]我有一个数据库 WP

    打开环境访问看到 提示我有一个数据库,但里面什么都没有,于是拿dirsearch跑了一下,没有出结果 但是有数据库嘛,那么试试常见的几个加上phpmyadmin 试试 于是看到了版本是4.8.1 拿到 ...

  6. Git将本地仓库上传到github

    这里采用简单的描述,提供两种方式: 一.连接本地文件夹和远程仓库 1.使用pull--拉取github项目文件 (1)进入到自己要上传的文件夹内部,然后git bash here (2)输入命令 gi ...

  7. getSessionFactory().openSession()导致druid连接池中的连接都占用满但无法回收

    该问题产生的现象 页面刷新几次后,就卡住,线上就得需要重新部署(还好是测试环境,不是真正生产环境) 过程及原因 查看日志线程池满了 Caused by: org.springframework.jdb ...

  8. 使用ingress-nginx

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247496824&idx=1&sn=cd845d77 ...

  9. firewalld教程

    修改配置 cat firewalld.conf | grep -Ev "^#|^$" DefaultZone=trusted #主要是这个位置,必须修改trusted的 Minim ...

  10. kubernetes kubectl 命令自动补全

    yum install -y bash-completion source /usr/share/bash-completion/bash_completion source <(kubectl ...