电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

SQL年齡計算的兩種方法實例

瀏覽:185日期:2023-03-06 14:25:19
目錄
  • 第一種方法:
  • 第二種方法:
  • 總結(jié)

第一種方法:

用DATEDIFF函數(shù),DATEDIFF(YEAR,beginDate,endDate)

測試語句:

DECLARE @birthdayDate DATEDECLARE @endDate DATEDECLARE @age INTSET @birthdayDate ="2003-08-08"SET @endDate = "2008-07-08"SET @age = DATEDIFF(YEAR,@birthdayDate,@endDate)SELECT @age AS 年齡

執(zhí)行結(jié)果:

這種方法計算出的年齡,是個大概年齡,是“年”意義下的年齡,就是普羅大眾對年齡的理解下的年齡。

如果按“月”、“日”去計算,上述例子中的年齡其實是不足5歲的。

所以,當我們寫的程序?qū)δ挲g的計算的精度要求比較高時,

比如社保待遇的享受起始時間、退休金發(fā)放起始時間的計算,需要對年齡的精確計算;

政治生活中,干部的提拔、退職,也都涉及到年齡的精確計算;

民事刑事案件中當事人年齡的計算,年齡的大小直接涉及到量刑的輕重,所以也需要對年齡進行精確計算。

第二種方法:

FLOOR(DATEDIFF(DAY,@birthdayDate,@endDate)/365.25)

FLOOR函數(shù):返回小于或等于指定數(shù)值表達式的最大整數(shù)。又稱,向下取整函數(shù)。

(Returns the largest integer less than or equal to the specified numeric expression.)

PS:numberic expression,數(shù)值表達式 ,arithmeric expression,算術(shù)表達式。

FLOOR(4)=4,

FLOOR(4.2)=4,

FLOOR(4.5)=4,

FLOOR(4.9)=4.

測試語句:

DECLARE @birthdayDate DATEDECLARE @endDate DATEDECLARE @age FLOATSET @birthdayDate ="2003-08-08"SET @endDate = "2008-07-08"SET @age = FLOOR(DATEDIFF(DAY,@birthdayDate,@endDate)/365.25)SELECT @age AS 年齡

執(zhí)行結(jié)果:

算法釋義:

因為4年有一閏年會多1天,多除以0.25,相當于把這一天平均攤到這4年,保證每4年的誤差歸零。

這個算法其實也有小小的誤差,除非出生不滿一歲就碰到閏月,先有一天再來遞減,會完全正確,不然的話在遇到閏年前會差一天,遇到閏年后變準確,但是當這個閏年補完4年差額在遇到下一個閏年之前又會差一天。也就是生日當天程序會顯示沒滿周歲。

我們測試一下,比如2000、2004、2008年是閏年,但是2001、2002、2003、2005、2006、2007年都不是閏年。

假定李某在2001-02-08出生,我們用2002、2003、2004年生日當天去計算年齡時,都會發(fā)生誤差。

因為2004年是閏年,用2005年生日當天去計算年齡就正確,過了2005年(2005-2001=4),我們用2006、2007、2008年生日當天去計算年齡,也會發(fā)生誤差。

如果李某在2001-03-08(只要過了2月的一個日期就行)出生,

我們用2002、2003年生日當天去計算年齡時,會發(fā)生誤差。

但是用2004、2005年生日當天去計算年齡就正確,過了2005年(2005-2001=4),我們用2006、2007年生日當天去計算年齡,也會發(fā)生誤差。

用2008年生日當天去計算年齡,就沒有誤差。

請讀者自行驗證。

總結(jié)

到此這篇關(guān)于SQL年齡計算的文章就介紹到這了,更多相關(guān)SQL年齡計算內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標簽: MsSQL
主站蜘蛛池模板: 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂_帽子厂_浙江高普制帽厂 | 证券新闻,热播美式保罗1984第二部_腾讯1080p-仁爱影院 | 滚筒线,链板线,总装线,流水线-上海体能机电有限公司 | 代理记账_免费注册公司_营业执照代办_资质代办-【乐财汇】 | 福州时代广告制作装饰有限公司-福州广告公司广告牌制作,福州展厅文化墙广告设计, | 智能门锁电机_智能门锁离合器_智能门锁电机厂家-温州劲力智能科技有限公司 | 智能化的检漏仪_气密性测试仪_流量测试仪_流阻阻力测试仪_呼吸管快速检漏仪_连接器防水测试仪_车载镜头测试仪_奥图自动化科技 | 不锈钢闸阀_球阀_蝶阀_止回阀_调节阀_截止阀-可拉伐阀门(上海)有限公司 | 中空玻璃生产线,玻璃加工设备,全自动封胶线,铝条折弯机,双组份打胶机,丁基胶/卧式/立式全自动涂布机,玻璃设备-山东昌盛数控设备有限公司 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 带式过滤机厂家_价格_型号规格参数-江西核威环保科技有限公司 | 小型气象站_便携式自动气象站_校园气象站-竞道气象设备网 | 手板-手板模型-手板厂-手板加工-生产厂家,[东莞创域模型] | 苏州防水公司_厂房屋面外墙防水_地下室卫生间防水堵漏-苏州伊诺尔防水工程有限公司 | 连续密炼机_双转子连续密炼机_连续式密炼机-南京永睿机械制造有限公司 | 碳化硅,氮化硅,冰晶石,绢云母,氟化铝,白刚玉,棕刚玉,石墨,铝粉,铁粉,金属硅粉,金属铝粉,氧化铝粉,硅微粉,蓝晶石,红柱石,莫来石,粉煤灰,三聚磷酸钠,六偏磷酸钠,硫酸镁-皓泉新材料 | 许昌奥仕达自动化设备有限公司 | 高压分散机(高压细胞破碎仪)百科-北京天恩瀚拓 | 科箭WMS仓库管理软件-TMS物流管理系统-科箭SaaS云服务 | 河南彩印编织袋,郑州饲料编织袋定制,肥料编织袋加工厂-盛军塑业 河南凯邦机械制造有限公司 | 无锡装修装潢公司,口碑好的装饰装修公司-无锡索美装饰设计工程有限公司 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 凝胶成像系统(wb成像系统)百科-上海嘉鹏 | 骨密度检测仪_骨密度分析仪_骨密度仪_动脉硬化检测仪专业生产厂家【品源医疗】 | 缠膜机|缠绕包装机|无纺布包装机-济南达伦特机械设备有限公司 | 化妆品加工厂-化妆品加工-化妆品代加工-面膜加工-广东欧泉生化科技有限公司 | 山东石英砂过滤器,除氟过滤器「价格低」-淄博胜达水处理 | 云南丰泰挖掘机修理厂-挖掘机维修,翻新,再制造的大型企业-云南丰泰工程机械维修有限公司 | PAS糖原染色-CBA流式多因子-明胶酶谱MMP-上海研谨生物科技有限公司 | 天津散热器_天津暖气片_天津安尼威尔散热器制造有限公司 | 钢丝绳探伤仪-钢丝绳检测仪-钢丝绳探伤设备-洛阳泰斯特探伤技术有限公司 | 金联宇电缆|广东金联宇电缆厂家_广东金联宇电缆实业有限公司 | 冷热冲击试验箱_温度冲击试验箱价格_冷热冲击箱排名_林频厂家 | 土壤养分检测仪|土壤水分|土壤紧实度测定仪|土壤墒情监测系统-土壤仪器网 | 丽陂特官网_手机信号屏蔽器_Wifi信号干扰器厂家_学校考场工厂会议室屏蔽仪 | 电解抛光加工_不锈钢电解抛光_常州安谱金属制品有限公司 | 棉柔巾代加工_洗脸巾oem_一次性毛巾_浴巾生产厂家-杭州禾壹卫品科技有限公司 | 哈尔滨治「失眠/抑郁/焦虑症/精神心理」专科医院排行榜-京科脑康免费咨询 一对一诊疗 | 吸污车_吸粪车_抽粪车_电动三轮吸粪车_真空吸污车_高压清洗吸污车-远大汽车制造有限公司 | BOE画框屏-触摸一体机-触控查询一体机-触摸屏一体机价格-厂家直销-触发电子 | 金属抛光机-磁悬浮抛光机-磁力研磨机-磁力清洗机 - 苏州冠古科技 |