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 相关文章推荐
SQL Server连接查询的实用教程
Apr 07 SQL Server
SQLServer 日期函数大全(小结)
Apr 08 SQL Server
如何有效防止sql注入的方法
May 25 SQL Server
数据库之SQL技巧整理案例
Jul 07 SQL Server
SqlServer数据库远程连接案例教程
Jul 15 SQL Server
SQL Server2019数据库备份与还原脚本,数据库可批量备份
Nov 20 SQL Server
MSSQL基本语法操作
Apr 11 SQL Server
SQL Server中的游标介绍
May 20 SQL Server
SQL Server使用PIVOT与unPIVOT实现行列转换
May 25 SQL Server
SQL Server一个字符串拆分多行显示或者多行数据合并成一个字符串
May 25 SQL Server
在SQL Server中使用 Try Catch 处理异常的示例详解
Jul 15 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
example2.php
2006/10/09 PHP
php笔记之:文章中图片处理的使用
2013/04/26 PHP
document.open() 与 document.write()的区别
2007/08/13 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
JavaScript Promise启示录
2014/08/12 Javascript
JS获取当前网页大小以及屏幕分辨率等
2014/09/05 Javascript
javascript中call和apply的用法示例分析
2015/04/02 Javascript
jQuery实现带玻璃流光质感的手风琴特效
2015/11/20 Javascript
Bootstrap项目实战之首页内容介绍(全)
2016/04/25 Javascript
jQuery插件EasyUI设置datagrid的checkbox为禁用状态的方法
2016/08/05 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
js取小数点后两位四种方法
2019/01/18 Javascript
微信小程序动态评分展示/五角星展示/半颗星展示/自定义长度展示功能的实现
2020/07/22 Javascript
Python中Random和Math模块学习笔记
2015/05/18 Python
详解Python中的from..import绝对导入语句
2016/06/21 Python
实现python版本的按任意键继续/退出
2016/09/26 Python
pandas表连接 索引上的合并方法
2018/06/08 Python
python中使用print输出中文的方法
2018/07/16 Python
Python数据可视化之画图
2019/01/15 Python
python实现图片转字符小工具
2019/04/30 Python
解决Python列表字符不区分大小写的问题
2019/12/19 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
Python3 shelve对象持久存储原理详解
2020/03/23 Python
在Anaconda3下使用清华镜像源安装TensorFlow(CPU版)
2020/04/19 Python
Keras 中Leaky ReLU等高级激活函数的用法
2020/07/05 Python
input file上传文件样式支持html5的浏览器解决方案
2012/11/14 HTML / CSS
俄罗斯运动、健康和美容产品在线商店:Lactomin.ru
2020/07/23 全球购物
Unix控制后台进程都有哪些进程
2016/09/22 面试题
应聘护士自荐信
2013/10/21 职场文书
《锄禾》教学反思
2014/04/08 职场文书
个人考核材料
2014/05/15 职场文书
室内趣味活动方案
2014/08/24 职场文书
村主任个人对照检查材料
2014/10/01 职场文书
党员查摆剖析材料
2014/10/10 职场文书
天下第一关导游词
2015/02/06 职场文书
html+css实现文字折叠特效实例
2021/06/02 HTML / CSS