sql通过日期判断年龄函数的示例代码


Posted in SQL Server onJuly 16, 2021

定义函数:

CREATE FUNCTION [dbo].[GetAge]  
(  
@BirthDay nvarchar(20) --生日  
)  
RETURNS varchar(20)  
AS  
BEGIN  
if(@BirthDay is NUlL or @BirthDay='')
return '';
 -- Declare the return variable here  
 DECLARE @age varchar(20)  
 DECLARE @years int  
 DECLARE @months int  
 DECLARE @days int  
 -- Add the T-SQL statements to compute the return value here  
 set @age = ''  
  
 set @years = year(GETDATE()) - year(@birthday)  
 set @months = month(GETDATE()) - month(@birthday)  
 if day(@birthday)<=day(GETDATE())  
   set @days = day(GETDATE()) - day(@birthday)  
 else  
   begin  
     set @months = @months - 1  
     if MONTH(@birthday) in (1,3,5,7,8,10,12)  
       set @days = 31-day(@birthday)+day(GETDATE())  
     else if MONTH(@birthday) in (4,6,9,11)  
       set @days = 30-day(@birthday)+day(GETDATE())  
     else if MONTH(@birthday) = 2  
       if (year(@birthday)%4 = 0 and year(@birthday)%100 <> 0) or year(@birthday)%400 = 0  
         set @days = 29-day(@birthday)+day(GETDATE())  
       else  
         set @days = 28-day(@birthday)+day(GETDATE())  
   end  
 if @months < 0  
   begin  
     set @years = @years - 1  
     set @months = @months + 12  
   end  
 if @years = 0 and @months = 0  
 begin  
     return convert(varchar,@days+1) + '天'  
  end  
 if @years > 0  
   set @age = cast(@years as varchar(5)) + '岁'  
 if @years < 3 and @months > 0 and @years>-1  
 begin  
   set @age = @age + cast(@months as varchar(5)) + '月'  
 end  
 if @years<0  
 set @age=''  
 RETURN @age  
END

使用函数:

sql通过日期判断年龄函数的示例代码

到此这篇关于sql通过日期判断年龄函数的示例代码的文章就介绍到这了,更多相关sql日期计算年龄内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

SQL Server 相关文章推荐
mybatis调用sqlserver存储过程返回结果集的方法
May 08 SQL Server
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
Jun 30 SQL Server
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
Jun 30 SQL Server
SqlServer数据库远程连接案例教程
Jul 15 SQL Server
SQL Server表分区删除详情
Oct 16 SQL Server
SQLServer RANK() 排名函数的使用
Mar 23 SQL Server
sqlserver连接错误之SQL评估期已过的问题解决
Mar 23 SQL Server
SQL Server表分区降低运维和维护成本
Apr 08 SQL Server
使用MybatisPlus打印sql语句
Apr 22 SQL Server
SQL Server 中的事务介绍
May 20 SQL Server
SQL SERVER中的流程控制语句
May 25 SQL Server
SQL Server使用PIVOT与unPIVOT实现行列转换
May 25 SQL Server
利用 SQL Server 过滤索引提高查询语句的性能分析
SqlServer数据库远程连接案例教程
数据库之SQL技巧整理案例
Jul 07 #SQL Server
SQL Server中使用判断语句(IF ELSE/CASE WHEN )案例
Jul 07 #SQL Server
SQL Server代理:理解SQL代理错误日志处理方法
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
You might like
destoon设置自定义搜索的方法
2014/06/21 PHP
php微信公众号开发之图片回复
2018/10/20 PHP
php和redis实现秒杀活动的流程
2019/07/17 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript 必知必会之closure
2009/09/21 Javascript
详解强大的jQuery选择器之基本选择器、层次选择器
2012/02/07 Javascript
jquery等宽输出文字插件使用介绍
2013/09/18 Javascript
JavaScript插件化开发教程(六)
2015/02/01 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
jQuery异步上传文件插件ajaxFileUpload详细介绍
2015/05/19 Javascript
javascript+canvas实现刮刮卡抽奖效果
2015/07/29 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
jQuery动态生成Bootstrap表格
2016/11/01 Javascript
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
使用JavaScript进行表单校验功能
2017/08/01 Javascript
详解VUE项目中安装和使用vant组件
2019/04/28 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
原生JS实现音乐播放器的示例代码
2021/02/25 Javascript
[01:06:54]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第一场 1月24日
2021/03/11 DOTA
通过代码实例展示Python中列表生成式的用法
2015/03/31 Python
Python基于smtplib实现异步发送邮件服务
2015/05/28 Python
Python语言描述连续子数组的最大和
2018/01/04 Python
对python numpy数组中冒号的使用方法详解
2018/04/17 Python
Window环境下Scrapy开发环境搭建
2018/11/18 Python
澳大利亚波西米亚风情网上商店:Czarina
2019/03/18 全球购物
日本最大的购物网站:日本乐天市场(Rakuten Ichiba)
2020/11/04 全球购物
Linux面试题LINUX系统类
2015/11/25 面试题
通信工程专业个人找工作求职信范文
2013/09/21 职场文书
中药专业大学生医药工作求职信
2013/10/25 职场文书
2013届毕业生求职信范文
2013/11/20 职场文书
给客户的道歉信
2014/01/13 职场文书
黄金酒广告词
2014/03/21 职场文书
会计求职信
2014/05/29 职场文书
副总经理岗位职责范本
2015/04/08 职场文书
2016年校园重阳节广播稿
2015/12/18 职场文书
MySQL创建管理LIST分区
2022/04/13 MySQL