已知出生年月日,求到今天為止多少歲
select *,
--如果當前月份大于出生月,年齡 = 當前年份 - 出生年
if (month(current_date())-month(substr(id_card,7,8))>0,
year(current_date())-year(substr(id_card,7,8)),
--如果當前月份小于出生月,年齡 = 當前年份 - 出生年 - 1
if(
month(current_date())-month(substr(id_card,7,8))<0,
year(current_date())-year(substr(id_card,7,8))-1,
--如果當前月份等于出生月,比較日期
if(
--當前日期大于出生日期 ,年齡 = 當前年份 - 出生年
day(current_date())-day(substr(id_card,7,8))>0,
year(current_date())-year(substr(id_card,7,8)),
---當前日期小于出生日期 ,年齡 = 當前年份 - 出生年 - 1
year(current_date())-year(substr(id_card,7,8))-1
)
)
)as 'age'
from person limit 10;
本文來自博客園,作者:JD_L,轉載請注明原文鏈接:https://www.cnblogs.com/dream-come-true/p/17287916.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/549231.html
標籤:MySQL
