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

 更新时间:2020年11月06日 11:28:40   作者:a little rookie  
这篇文章主要给大家介绍了关于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.age<18 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.age<18 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出生日期转年龄并分组统计内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL查询优化:LIMIT 1避免全表扫描提高查询效率

    MySQL查询优化:LIMIT 1避免全表扫描提高查询效率

    在某些情况下,如果明知道查询结果只有一个,SQL语句中使用LIMIT 1会提高查询效率,感兴趣的朋友可以了解下哈,希望对你优化mysql查询有所帮助
    2013-04-04
  • MySQL之select in 子查询优化的实现

    MySQL之select in 子查询优化的实现

    这篇文章主要介绍了MySQL之select in 子查询优化的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 在MySQL中使用Sphinx实现多线程搜索的方法

    在MySQL中使用Sphinx实现多线程搜索的方法

    这篇文章主要介绍了在MySQL中使用Sphinx实现多线程搜索的方法,修改Sphinx的搜索引擎配置即可,需要的朋友可以参考下
    2015-06-06
  • mysql存储过程事务管理简析

    mysql存储过程事务管理简析

    本文将提供了一个绝佳的机制来定义、封装和管理事务,需要的朋友可以参考下
    2012-11-11
  • MySQL实现自然连接查询的示例

    MySQL实现自然连接查询的示例

    MySQL自然连接是一种基于共同列名自动执行的查询方式,无需显式指定连接条件,自然连接的结果可能会受到列名和表结构的影响,因此在使用自然连接时需谨慎,本文就来介绍一下如何使用,感兴趣的可以了解一下
    2024-09-09
  • MySQL如何实现跨库join查询

    MySQL如何实现跨库join查询

    这篇文章主要介绍了MySQL如何实现跨库join查询问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 关于MYSQL中每个用户取1条记录的三种写法(group by xxx)

    关于MYSQL中每个用户取1条记录的三种写法(group by xxx)

    本篇文章是对MYSQL中每个用户取1条记录的三种写法进行了详细的分析介绍,需要的朋友参考下
    2013-07-07
  • MySQL必备的常见知识点汇总整理

    MySQL必备的常见知识点汇总整理

    这篇文章主要介绍了MySQL必备的常见知识点,结合实例形式汇总整理了mysql各种常见知识点,包括登录、退出、创建、增删改查、事务等知识点与操作注意事项,需要的朋友可以参考下
    2020-05-05
  • MySQL主从同步中的server-id示例详解

    MySQL主从同步中的server-id示例详解

    这篇文章主要给大家介绍了关于MySQL主从同步中server-id的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • MySql5.7.18字符集配置图文详解

    MySql5.7.18字符集配置图文详解

    本文通过图文并茂的形式给大家介绍了mysql5.7.18字符集配置教程,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-06-06

最新评论