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数据库单表查询 4.3实验课
Apr 05 SQL Server
【HBU】数据库第四周 单表查询
Apr 05 SQL Server
sql查询结果列拼接成逗号分隔的字符串方法
May 25 SQL Server
sql server删除前1000行数据的方法实例
Aug 30 SQL Server
SQL Server表分区删除详情
Oct 16 SQL Server
SQL中的三种去重方法小结
Nov 01 SQL Server
sql时间段切分实现每隔x分钟出一份高速门架车流量
Feb 28 SQL Server
SQL Server内存机制浅探
Apr 06 SQL Server
SQL Server使用导出向导功能
Apr 08 SQL Server
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
May 25 SQL Server
SQL Server中的逻辑函数介绍
May 25 SQL Server
SQL bool盲注和时间盲注详解
Jul 23 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
function.inc.php超越php
2006/12/09 PHP
真正的ZIP文件操作类(php)
2007/07/21 PHP
php/js获取客户端mac地址的实现代码
2013/07/08 PHP
PHP页面中文乱码分析
2013/10/29 PHP
PHP遍历XML文档所有节点的方法
2015/03/12 PHP
yii2利用自带UploadedFile实现上传图片的示例
2017/02/16 PHP
php 中self,this的区别和操作方法实例分析
2019/11/04 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
2020/02/15 PHP
基于php解决json_encode中文UNICODE转码问题
2020/11/10 PHP
javascript 面向对象编程 万物皆对象
2009/09/17 Javascript
JavaScript继承方式实例
2010/10/29 Javascript
JavaScript原生对象之Date对象的属性和方法详解
2015/03/13 Javascript
javaScript中push函数用法实例分析
2015/06/08 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
DEDECMS如何为文章添加HOT NEW标志图片
2015/08/14 Javascript
详解jQuery Mobile自定义标签
2016/01/06 Javascript
总结jQuery插件开发中的一些要点
2016/05/16 Javascript
js验证框架实现代码分享
2016/05/18 Javascript
node.js中module.exports与exports用法上的区别
2016/09/02 Javascript
vue根据进入的路由进行原路返回的方法
2018/09/26 Javascript
JavaScript链式调用实例浅析
2018/12/19 Javascript
vue+web端仿微信网页版聊天室功能
2019/04/30 Javascript
简述Vue中容易被忽视的知识点
2019/12/09 Javascript
jquery实现手风琴案例
2020/05/04 jQuery
[03:40]DOTA2亚洲邀请赛小组赛第二日 赛事回顾
2015/01/31 DOTA
python使用opencv对图像mask处理的方法
2019/07/05 Python
python 一个figure上显示多个图像的实例
2019/07/08 Python
python 模拟银行转账功能过程详解
2019/08/06 Python
Python模拟登入的N种方式(建议收藏)
2020/05/31 Python
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
人力资源部经理助理岗位职责
2014/03/04 职场文书
保护动物的标语
2014/06/11 职场文书
2014国庆黄金周超市促销活动方案
2014/09/21 职场文书
保险公司客户经理岗位职责
2015/04/09 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书
vue+element ui实现锚点定位
2021/06/29 Vue.js