问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

新人求解一道数据库问题,要用sqlsever存储过程来处理,要具体实现代码

发布网友 发布时间:2022-04-08 08:39

我来回答

1个回答

热心网友 时间:2022-04-08 10:09

楼主好,代码如下,自己写的,应该是能够满足你的需求。
CREATE
PROCEDURE [dbo].[GetTime]
@BirthDay nvarchar(20)
as
begin
declare @result nvarchar(20)
if DATEDIFF(YEAR,@BirthDay,GETDATE())>=14
begin
set @result= cast(DATEDIFF(YEAR,@BirthDay,GETDATE()) as nvarchar(6))+'岁'
end
if DATEDIFF(YEAR,@BirthDay,GETDATE())<14 and DATEDIFF(MONTH,@BirthDay,GETDATE())>=12
begin
if MONTH(GETDATE())-MONTH(@BirthDay)<0
set @result=cast(DATEDIFF(YEAR,@BirthDay,GETDATE())-1 as nvarchar(4))+'年零'+cast(datediff(mm,@BirthDay,GETDATE())%12 as nvarchar(4))+'月'
else
set @result=cast(DATEDIFF(YEAR,@BirthDay,GETDATE()) as nvarchar(4))+'年零'+cast(datediff(mm,@BirthDay,GETDATE())%12 as nvarchar(4))+'月'
end
if DATEDIFF(MONTH,@BirthDay,GETDATE())<12
begin
--当今天的日期号减去出生日期的日期号小于0,则判定为相对的月份天数不足一个月,则需要在计算月的时候减去1
--例如出生日期为2月20号,今天是4月15号,则时间差应该为1个月零26天,而不是两个月
if DAY(GETDATE())-DAY(@BirthDay)<0
set @result=cast(case when DATEDIFF(MONTH,@birthday,GETDATE())-1<0 then 0 else DATEDIFF(MONTH,@birthday,GETDATE())-1 end as nvarchar(4))+'月零'+cast(DATEDIFF(DAY,@birthday,GETDATE())-DATEDIFF(DAY,left(@birthday,7)+'-01',left(CONVERT(NVARCHAR(20),GETDATE(),23),7)+'-01') as nvarchar(4))+'天'
else
set @result=cast(DATEDIFF(MONTH,@birthday,GETDATE()) as nvarchar(4))+'月零'+cast(DATEDIFF(DAY,@birthday,GETDATE())-DATEDIFF(DAY,left(@birthday,7)+'-01',left(CONVERT(NVARCHAR(20),GETDATE(),23),7)+'-01') as nvarchar(4))+'天'
end
select @result
END
GO追问大兄弟辛苦了,我还没验证,不过看在这么帮忙的份上直接给了

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
桃李芬芳的近义词是? 请会答正确。 急... 墨西哥很混乱吗 为什么我的OPPOR9手机连接到任何蓝牙设备放歌曲,都没有办法在蓝牙设备... OPPOA9如何连接酷狗与手机蓝牙? 华为荣耀3X 白色畅玩版的声音调至最大声仍很小声 荣耀3x刷机后卸载了一些系统软件,然后就无法开机,一直停留在开机界面... 平安富赢金生年金保险值得买吗?最全产品测评! 收音机音量旋钮音量最大还是小 德生pl_450收音机音量电位器声音惑大惑小,电位器的型号是什么_百度知 ... 浙江金融学院有什么专业 孔明锁怎么玩? 兔子面包怎么捏 黑色橡皮泥可以捏成什么食物 中兴U880现在可以刷安卓4.0冰激凌吗?可以的话求教程 求下载地址 苹果的IOS都能刷安 5e多少分算高手? 镀晶蜡与镀晶剂有什么不同 新车要不要打蜡,还是镀晶,甚至有人上车衣 新车镀晶后一年以后可以用液体蜡或者镀晶蜡吗 3m车蜡官方网站,3m车蜡怎么样,3m车蜡的价格? 黑色车门抛光后发乌不亮,这是为什么? 新车买回来半年就打蜡了会不会快了一点 引擎盖镀晶后发白 镀晶蜡什么用 我黑车简单抛光镀晶后,店主让我以后打一种镀晶蜡,就可以一直持久下去,不用再去补镀晶,这样对吗?在线 镀晶和镀晶蜡的区别是什么? 镀晶上当了后悔 镀晶蜡到底是什么,有什么作用 2011款福克斯白色引擎盖上颜色发黑。 梦见自己做着滑板回家是怎么回事? 梦见我踩着滑板车,两条狗拉着我走什么意思? 空调外机可不可以斜靠在墙上 挂机空调外机和内机隔墙靠着装可以吗? 求助空调外机背面太靠墙壁大概1公分,行吗? 房屋阳台和卧室的墙可以打通吗?3个空调外机怎么放呢? 如何在一条SQL中对比日期间隔并计算总数 &quot;核备&quot;一词是什么意思? &quot;核备&quot;一词是什么意思 一个备案,两个核备,两个确认,四个核定分别是什么 什么是鉴修概算、核备概算? 招标文件核备要多长时间,招标文件核备要多长时间知识 分部工程验收质量结论核备意见怎么填 危大工程监理细则由谁编制危大工程监理细则谁编制,谁审批 工程安全鉴定监理单位要准备些什么东西呀? 建立项目监理组织有哪些主要步骤 台湾企业如何在大陆办理办事处或分公司? 监理规划谁编制谁审核? mysql 大量数据查询速度慢,sql语句求解! 股票基金定投频率多长时间合适? 压缩机QD43是多少瓦 压缩机QD43L是多少功率几瓦