sqlserver年月日转汉字大写
也是今天sql群里有人问,看起来这个问题挺简单,但是我不知道具体该怎么实现。百度了一把,找到一个高手贡献的答案,记一下。
参考链接 sql中转换中文日期
------ 配合相关函数 ------
create function convertNumToChinese
(@instr varchar(2))
returns varchar(2)
as
begin
declare @temStr varchar(2)
if @instr = '' set @temStr = '一'
if @instr ='' set @temStr = '二'
if @instr ='' set @temStr = '三'
if @instr ='' set @temStr = '四'
if @instr ='' set @temStr = '五'
if @instr ='' set @temStr = '六'
if @instr ='' set @temStr = '七'
if @instr ='' set @temStr = '八'
if @instr ='' set @temStr = '九'
if @instr ='' set @temStr = '零'
return @temstr
end --------------实现关键--存储过程--------------------
create procedure convertDateToChinese
@vdate datetime,@ChineseDateStr varchar(50) out
as
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) = ''
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vMonth,2,1))
else
begin
if substring(@vMonth,2,1) = ''
set @temstr = @temstr + '十'
else
set @temstr = @temstr +'十'+ dbo.convertNumToChinese(substring(@vMonth,2,1))
end set @temstr = @temstr + '月' -- 开始计算日期 if convert(int,@vDay) < 10
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vDay,1,1))
else
begin
if substring(@vDay,2,1) = ''
begin
if substring(@vDay,1,1)<> ''
set @temstr = @temstr + dbo.convertNumToChinese(substring(@vDay,1,1)) + '十'
else
set @temstr = @temstr + '十'
end
else
begin
if substring(@vDay,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 + '日'
print @temstr
set @ChineseDateStr = @temstr
调用方法:
declare @str_format varchar(30);
exec convertDateToChinese '2017-11-08 13:30',@str_format output
select @str_format
结果:

sqlserver年月日转汉字大写的更多相关文章
- sqlserver年月日转汉字大写--自定义函数--繁体
两个自定义函数结合 函数一: create function convertNumToChinese ()) ) as begin ) ' set @temStr = '壹' ' set @temSt ...
- mysql和SqlServer 中取得汉字字段的各汉字首字母
mysql 中取得汉字字段的各汉字首字母 这个转载于http://blog.csdn.net/lky5387/article/details/11973721 DELIMITER ;;CREATE ...
- C# 数字转换成汉字大写 数值转换成汉字大写
1.数字转换成汉字大写 public string NumToChinese(string x) { //数字转换为中文后的数组 //转载请注明来自 http://www.shang11.com st ...
- js将阿拉伯数字转换成汉字大写
适用场景:票据,结算凭证等.将任意数字的金额,转换成汉字大写的形式.例如:1234.50 -> 壹仟贰佰叁拾肆圆伍角.壹.贰.叁.肆 直接贴代码,如下: //阿拉伯数字转换成大写汉字 funct ...
- excel表格获取汉字大写首拼函数(自定义宏)
打开excel,按Alt+F11,插入-模块,复制粘贴下边的函数 Function pinyin(p As String) As String i = Asc(p) Select Case i Cas ...
- mssql sqlserver 获取指定汉字的笔画数的方法分享
转自:http://www.maomao365.com/?p=6421 摘要: 下文讲述计算汉字笔画数的sql函数分享,如下所示: 例:建立汉字笔画数sql函数 )) returns int as b ...
- sqlserver数据库存储汉字出现?
问题:有些相对复杂的汉字在数据库里会变成? 解决办法:原来数据类型是varchar,将数据类型修改为nvarchar
- 工具类_java 数字转化为汉字大写
public class Num2Rmb { private String[] hanArr = { "零", "壹", "贰", &quo ...
- sqlserver 数据库插入汉字变成乱码的解决方案
alter database 数据库名collate Chinese_PRC_CI_AS在英文版(或者其他版本)的数据库中插入中文会出现乱码这个就可以修改数据库排序规则.不会出现乱码了
随机推荐
- Swift里字符串(六)Shared strings
Shared strings do not have tail-allocated storage, but can provide access upon query to contiguous U ...
- D08——C语言基础学PYTHON
C语言基础学习PYTHON——基础学习D08 20180829内容纲要: socket网络编程 1 socket基础概念 2 socketserver 3 socket实现简单的SSH服务器端和 ...
- Zabbix3.2邮件告警python脚本
一.概述及环境要求 1.概述 zabbix监控也起到重要作用,以下是使用python脚本发送告警邮件配置方法.之前使用过sendemail邮件报警但是发现邮件主题为中文时候会出现乱码的问题. 2.环境 ...
- python3 判断大小端的一种方法
这里用到了array.array('H', [1])来测试大小端,[1]可以转化为十六进制的0x0001,占两位,00位高位, 01位低位,通过第一位就可以判断大小端. 如果是小端,则转化为bytes ...
- Postman—脚本介绍
前言 Postman包含一个基于Node.js的强大的运行时环境,它允许我们为请求和集合添加动态行为.这使的我们可以编写测试用例,构建可包含动态参数的请求,在请求之间传递数据等等. 我们可以在流程中以 ...
- postman—post方式几种请求参数区别
postman中 form-data.x-www-form-urlencoded.raw.binary的区别 版权声明参考: https://blog.csdn.net/wangjun5159/art ...
- javascript对象属性的命名规则
JS标识符的命名规则,即变量的命名规则: 标识符只能由字母.数字.下划线和‘$’组成 数字不可以作为标识符的首字符 对象属性的命名规则 通过[]操作符为对象添加属性时,属性名称可以是任何字符串(包括只 ...
- vue2.0实现购物车功能
购物车功能是一件比较繁琐的事情,逻辑功能太多,今天就用vue2.0实现一个简单的购物车功能,数据都本地自己写的假数据 功能列表: 1.全选和单选结算 2.减少和增加数量 3.商品的删除 界面搭建以及布 ...
- 机器学习--Gradient Boosting Machine(GBM)调参方法详解
一.GBM参数 总的来说GBM的参数可以被归为三类: 树参数:调节模型中每个决策树的性质 Boosting参数:调节模型中boosting的操作 其他模型参数:调节模型总体的各项运作 1.树参数 现在 ...
- Web服务的调用
1.创建服务引用 例如:天气预报 2.在代码添加引用空间 TvProgram.ChinaTVprogramWebService tp = new TvProgram.ChinaTVprogramWeb ...