[英]How to determine the difference between two dates in years and months in MYSQL?
該數據庫保存着各個年齡段的記錄,其中包括1個月以下重要的1歲以下的孩子。
使用
SELECT TIMESTAMPDIFF(YEAR, dob, CURDATE()) AS age;
您遇到的問題是,任何<1年的人都顯示為0;
使用
SELECT TIMESTAMPDIFF(MONTH, dob, CURDATE()) AS age;
1歲以上的任何人都只會在幾個月內露面,因此43歲的年齡將大於500個月
使用
SELECT TIMESTAMPDIFF(MONTH, dob, CURDATE()) / 12 AS age;
您可以獲得一些結果,例如3個月大的.25或43歲以上的人的43.25
我想要達到的目標是
怎樣在mysql查詢中表達這樣的東西?
SELECT IF(TIMESTAMPDIFF(MONTH, dob, CURDATE())>12,TIMESTAMPDIFF(MONTH, dob, CURDATE())/12+ 'yeasrs old' , TIMESTAMPDIFF(MONTH, dob, CURDATE())+'months old')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.