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 相关文章推荐
SqlServer 垂直分表(减少程序改动)
Apr 16 SQL Server
利用 SQL Server 过滤索引提高查询语句的性能分析
Jul 15 SQL Server
SQL写法--行行比较
Aug 23 SQL Server
Spark SQL 2.4.8 操作 Dataframe的两种方式
Oct 16 SQL Server
sql时间段切分实现每隔x分钟出一份高速门架车流量
Feb 28 SQL Server
SQLServer RANK() 排名函数的使用
Mar 23 SQL Server
sql server偶发出现死锁的解决方法
Apr 10 SQL Server
MSSQL基本语法操作
Apr 11 SQL Server
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
May 25 SQL Server
SQL Server删除表中的重复数据
May 25 SQL Server
一次SQL查询优化原理分析(900W+数据从17s到300ms)
Jun 10 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
天使彦史上最神还原,性别曝光的那一刻,百万网友恋爱了
2020/03/02 国漫
2020显卡排行榜天梯图 显卡天梯图2020年3月最新版
2020/04/02 数码科技
PHP生成条形图的方法
2014/12/10 PHP
php实现比较两个字符串日期大小的方法
2015/05/12 PHP
PHP浮点数的一个常见问题
2016/03/10 PHP
yii2带搜索功能的下拉框实例详解
2016/05/12 PHP
Yii1.1框架实现PHP极光推送消息通知功能
2018/09/06 PHP
用户注册常用javascript代码
2009/08/29 Javascript
js获得当前时区夏令时发生和终止的时间代码
2014/02/23 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
Jquery日期选择datepicker插件用法实例分析
2015/06/08 Javascript
纯JavaScript实现的分页插件实例
2015/07/14 Javascript
jQuery实现模仿微博下拉滚动条加载数据效果
2015/12/25 Javascript
基于node实现websocket协议
2016/04/25 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
BootStrap轻松实现微信页面开发代码分享
2016/10/21 Javascript
canvas 绘制圆形时钟
2017/02/22 Javascript
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
React Native使用fetch实现图片上传的示例代码
2018/03/07 Javascript
Vue2.0 给Tab标签页和页面切换过渡添加样式的方法
2018/03/13 Javascript
基于Vue的延迟加载插件vue-view-lazy
2018/05/21 Javascript
这应该是最详细的响应式系统讲解了
2019/07/22 Javascript
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
Pandas透视表(pivot_table)详解
2019/07/22 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
django 中的聚合函数,分组函数,F 查询,Q查询
2019/07/25 Python
html5 canvas简单封装一个echarts实现不了的饼图
2018/06/12 HTML / CSS
美国排名第一的在线葡萄酒商店:Wine.com
2016/09/07 全球购物
HQhair美国/加拿大:英国化妆品、美容及美发产品商城
2019/04/15 全球购物
火山动力Java笔试题
2014/06/26 面试题
公务员转正鉴定材料
2014/02/11 职场文书
违反单位工作制度检讨书
2014/10/25 职场文书
公务员个人考察材料
2014/12/23 职场文书
2015年度学校卫生工作总结
2015/05/12 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书
办公室规章制度范本
2015/08/04 职场文书