SQL 生日得到年龄
CREATE FUNCTION ufn_hr_getagefrombirthday
(
@birthday DATE,
@now DATE =NULL )
RETURNS VARCHAR(20)
BEGIN IF (@now IS NULL OR @now = '')
BEGIN
SET @now = GETDATE();
END; DECLARE @age INT;
SET @age = 0; DECLARE @result VARCHAR(20); WHILE (DATEADD(YEAR, @age, @birthday) < @now)
BEGIN
SET @age = @age + 1;
END; SELECT @result
= CAST(CASE
WHEN (@age - 1) < 0 THEN
0
ELSE
(@age - 1)
END AS VARCHAR(4)) + '岁'
+ CAST(DATEDIFF(
DAY,
DATEADD( YEAR,
CASE
WHEN (@age - 1) < 0 THEN
0
ELSE
(@age - 1)
END,
DATEADD(DAY, 1, @birthday)
),
DATEADD(YEAR, @age, DATEADD(DAY, 1, @birthday))
) + 1 - (DATEDIFF(DAY, @now, DATEADD(YEAR, @age, DATEADD(DAY, 1, @birthday)))) AS VARCHAR(4))
+ '/'
+ CAST(DATEDIFF(
DAY,
DATEADD(YEAR, @age - 1, DATEADD(DAY, 1, @birthday)),
DATEADD(YEAR, @age, DATEADD(DAY, 1, @birthday))
)
AS VARCHAR(4)) + ''; RETURN @result;
END;
SQL 生日得到年龄的更多相关文章
- 【转载】Sqlserver根据生日计算年龄
在Sqlserver中,可以根据存储的出生年月字段计算出该用户的当前年龄信息,主要使用到DateDiff函数来实现.DateDiff函数的格式为DATEDIFF(datepart,startdate, ...
- C#根据身份证号码,计算生日、年龄、性别
朋友谈及身份证相关的信息,才了解到原来省份证号码中包含了年龄和性别. 这样在数据库中,就不必单独留字段存放它们了(不过,要根据具体情况来,要是读取频率较高,还是单独列出为好),这样顺带解决了年龄变更的 ...
- Java生日计算年龄工具
package com.web.backend.util; import java.util.Calendar;import java.util.Date; /** * @Author: SongZS ...
- 【pandas】生日转年龄
数据挖掘比赛中,获得的数据中可能有个人的生日,在数据分析中并不需要生日,而是需要年龄.不同年龄会呈现不同的状态,比如收入.健康.居住条件等,年龄能够很好的把不同样本的差异性进行大范围的划分.下面讲述如 ...
- java 根据生日计算年龄 Java问题通用解决代码
根据生日计算年龄可以通过Calendar实现.最简单可以考虑get(Calendar.DAY_OF_YEAR)来简单修正年龄,但是遇到生日在闰年的2月29之后,或者今年是闰年的2月29之后可能出现计算 ...
- C# 根据生日获取年龄
C# 根据生日获取年龄 根据生日计算出准确的年龄,不等于0时,返回的是岁,等于0时,返回的是天(以‘-’来区分) public static string GetAgeByBirth(string B ...
- PHP--年龄转生日、生日转年龄
/** * 年龄转生日(模糊结果) * @parameter int age(年龄) * @parameter string symbol(分隔符) * @return string (yyyy*mm ...
- 用sql语句实现年龄分段统计
SELECT CASE WHEN (age >= 10 AND age <= 20) THEN '10-20' WHEN (age >= 21 AND age <= 30) T ...
- python 根据生日计算年龄 sqlalchemy根据身份证号计算生日 性别
import datetime '): birth_d = datetime.datetime.strptime(birth_s, "%Y%m%d") today_d = date ...
随机推荐
- JS判断
/***************************************************************** 表单校验工具类 (linjq) ***************** ...
- mysqlQL 5.7 安装报错CMake Error at cmake/boost.cmake:81 (MESSAGE)
CMake Error at cmake/boost.cmake:81 (MESSAGE): You can download it with -DDOWNLOAD_BOOST=1 -DWITH_BO ...
- Python高阶函数和匿名函数
高阶函数:就是把函数当成参数传递的一种函数:例如 注解: 1.调用add函数,分别执行abs(-8)和abs(11),分别计算出他们的值 2.最后在做和运算 map()函数 python内置的一个高阶 ...
- C# Winform 国际化
1.在Form的language属性选择中文,来制作中文界面 保存后,设置界面标题会变成如下所示,并且会出现一个zh-CN的资源文件,打开resx文件可看到相应内容 2.将Form的language属 ...
- SVG分组和引用
这是我在掘金中的文章链接地址:https://juejin.im/post/5bcfe0fa51882577e3760467
- linux Posix线程同步(条件变量) 实例
条件变量:与互斥量一起使用,暂时申请不到某资源时进入条件阻塞等待,当资源具备时线程恢复运行 应用场合:生产线程不断的生产资源,并通知产生资源的条件,消费线程在没有资源情况下进入条件等待,一直等到条件信 ...
- elasticsearch(es) 集群恢复触发配置(Local Gateway参数)
elasticsearch(es) 集群恢复触发配置(Local Gateway) 当你集群重启时,几个配置项影响你的分片恢复的表现. 首先,我们需要明白如果什么也没配置将会发生什么. 想象一下假设你 ...
- asp.net mvc global.asax文件详解
一.文件概述 global.asax这个文件包含全局应用程序事件的事件处理程序.它响应应用程序级别和会话级别事件的代码. 运行时, Global.asax 将被编译成一个动态生成的 .NET Fram ...
- 前端---JQuery初识
---恢复内容开始--- BOM JQuery认识 JQuery基本选择器 JQuery高级选择器 1.javascript基础部分包括三个部分: ECMAScript:JavaScript的语法标准 ...
- C语言-第2次作业得分
作业链接:https://edu.cnblogs.com/campus/hljkj/CS20180的2/homework/2292 作业链接:https://edu.cnblogs.com/campu ...