• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Mysql出生日期转换为年龄并分组统计人数的方法示例

    查询数据库

    SELECT * FROM `student`
    

    查询结果

    id name birthday
    1 张三 1970-10-01
    2 李四 1990-10-01
    3 王五 2002-10-01
    4 马六 2003-10-01

    转换为年龄的查询语句,使用函数TIMESTAMPDIFF

    SELECT id, name, birthday, TIMESTAMPDIFF(YEAR,student.birthday,CURDATE()) as age FROM `student`
    

    查询结果

    d name birthady age
    1 张三 1970-10-01 50
    2 李四 1990-10-01 30
    3 王五 2002-10-01 18
    4 马六 2003-10-01 17

    然后按照年龄段进行分组

    SELECT
    	GROUP_CONCAT(a.id) as ids,
    	GROUP_CONCAT(a.name) as names,
    	CASE
    		WHEN a.age18 THEN '少年'
    		WHEN a.age>=18 AND a.age 40 THEN '青年'
    		WHEN a.age>=40 AND a.age 60 THEN '中年'
    	END as age,
    	count(a.id) as count
    FROM
    	(SELECT id, name, birthday, TIMESTAMPDIFF(YEAR,student.birthday,CURDATE()) as age FROM `student`) as a
    GROUP BY
    	CASE
    		WHEN a.age18 THEN '少年'
    		WHEN a.age>=18 AND a.age 40 THEN '青年'
    		WHEN a.age>=40 AND a.age 60 THEN '中年'
    	END
    

    查询结果

    ids names age count
    1 张三 中年 1
    4 马六 少年 1
    2,3 李四,王五 青年 2

    tips:当前时间是2020年

    总结

    到此这篇关于Mysql出生日期转换为年龄并分组统计人数的文章就介绍到这了,更多相关Mysql出生日期转年龄并分组统计内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • Postgresql 通过出生日期获取年龄的操作
    • Mysql中通过生日计算年龄的多种方法
    • sql通过日期判断年龄函数的示例代码
    上一篇:MySQL存储过程的深入讲解(in、out、inout)
    下一篇:浅析MySQL并行复制
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Mysql出生日期转换为年龄并分组统计人数的方法示例 Mysql,出生日期,转换,为,