Mysql根據出生日期查詢年齡,並分組


根據生日查詢出生日期:

SELECT(YEAR (curdate())- YEAR ( birthday )- 1+ (DATE_FORMAT( birthday, '%m%d' )<=(DATE_FORMAT( curdate(), '%m%d' )))) age FROM t_member

 

分組

SELECT (CASE
WHEN a.age IS NULL THEN ‘未知’
WHEN a.age BETWEEN 0 AND 18 THEN0-18歲’
WHEN a.age BETWEEN 18 AND 30 THEN18-30歲’
WHEN a.age BETWEEN 31 AND 45 THEN30-45歲’
WHEN a.age >= 45 THEN ‘45歲以上’
END) AS name,
COUNT(*) ‘value’ FROM
(SELECT(YEAR (curdate())- YEAR ( birthday )- 1+ (DATE_FORMAT( birthday, ‘%m%d’ )<=(DATE_FORMAT( curdate(), ‘%m%d’ )))) age FROM t_member) a GROUP BY name

 


在這里插入圖片描述

查詢結果:

在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM