探討如何計(jì)算age的sql函數(shù)
更新時(shí)間:2013年06月05日 16:59:29 作者:
本篇文章是對如何計(jì)算age的sql函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
復(fù)制代碼 代碼如下:
ALTER FUNCTION [dbo].[get_FullAge]
(
@birthday datetime, @currentDay datetime
)
RETURNS INT
AS
BEGIN
DECLARE @age INT
SET @age = DATEDIFF(YEAR, @birthday, @currentDay)
IF DATEDIFF(DAY, DATEADD(YEAR, @age, @birthday), @currentDay) <= 0
SET @age = @age - 1
IF DATEPART(MONTH, @birthday) = 2 AND DATEPART(DAY, @birthday) = 29 AND DATEPART(MONTH, @currentDay) = 3
AND DATEPART(DAY, @currentDay) = 1 AND
NOT (YEAR(@currentDay) % 4 = 0 AND (YEAR(@currentDay) % 100 !=0 OR YEAR(@currentDay) % 400 = 0))
SET @age = @age - 1
IF @age < 0
SET @age = 0
RETURN @age
END
--Sql根據(jù)出生日期計(jì)算age(不是很準(zhǔn)確)
1. select datediff(year,EMP_BIRTHDAY,getdate()) as '年齡' from EMPLOYEEUnChangeInfo
2. floor((DateDiff(day,u.EMP_BIRTHDAY,getdate()))/365
相關(guān)文章
MySQL性能參數(shù)詳解之Max_connect_errors 使用介紹
這篇文章主要介紹了MySQL性能參數(shù)詳解之Max_connect_errors 使用介紹,需要的朋友可以參考下2016-05-05MySQL timestamp的類型與時(shí)區(qū)實(shí)例詳解
這篇文章主要介紹了 MySQL timestamp的類型與時(shí)區(qū)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2016-11-11Mysql創(chuàng)建視圖中文亂碼如何修改docker里的配置
這篇文章主要介紹了Mysql創(chuàng)建視圖中文亂碼如何修改docker里的配置,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-10-10MySQL獲得當(dāng)前日期時(shí)間函數(shù)示例詳解
這篇文章主要給大家介紹了關(guān)于MySQL獲得當(dāng)前日期時(shí)間函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12MySQL ORDER BY 的實(shí)現(xiàn)分析
總的來說,在 MySQL 中的ORDER BY有兩種排序?qū)崿F(xiàn)方式,一種是利用有序索引獲取有序數(shù)據(jù),另一種則是通過相應(yīng)的排序算法,將取得的數(shù)據(jù)在內(nèi)存中進(jìn)行排序2012-07-07分享CentOS下MySQL最新版本5.6.13源碼安裝過程
這篇文章主要介紹了CentOS下安裝MySQL最新版本5.6.13過程分享,需要的朋友可以參考下2014-02-02