mysql - 按年份对记录进行分组,具有开始日期和结束日期

标签 mysql sql

我想构建一个图表,按年份显示启用项目,例如:

某个项目的 start_date 为 04-06-2014,end_date 为 07-09-2016,因此该项目在 2014 年、2015 年和 2016 年启用。

由于项目可以按不同年份进行计数,因此如何构建查询来获取按年份分组的记录?

最佳答案

您没有提供足够的信息...不过,基本思想是使用聚合函数,例如:

SELECT YEAR(date_field) As MyYear, SUM(numeric_field) AS MyValue
FROM TableName
WHERE (start_date_field >= '2014-04-06' AND  end_date_field <= '2016-07-09')
GROUP BY YEAR(date_field)

欲了解更多信息,请参阅:
Date and Time functions
Aggregate functions

关于mysql - 按年份对记录进行分组,具有开始日期和结束日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29479693/

相关文章:

php - Laravel 5.1 undefined variable : comments

jquery - 如何使用 jquery 和 ajax 从数据库中的数据创建 HTML 表格

求助mysql表结构的 friend ?

java - "EEE MMM dd HH:mm:ss ZZZ yyyy"日期格式转换为java.sql.Date

sql - sql中SELECT和SELECT IN有什么区别?

mysql - 从 DB2 迁移到 MySQL 的工具

mysql - 如何捕获 Grails 中的约束(索引)违规?

mysql - 更新任务状态,所有执行者将其标记为已完成

sql查询以收集具有共同项目的用户

java - 当我尝试在 SQL Server 上执行此查询时,为什么会在日期字段上出现此错误?