首页 > 解决方案 > mysql - 使用 groupby 月份数据计算一个月中的天数

问题描述

我只需要以下查询的帮助。在mysql表中有如下数据。 请忽略错字。它的日期不是数据。

在此处输入图像描述

我的查询如下。

Select MONTHNAME(Date) as period,  ((30*24*60)-SUM(MTTD))/(COUNT(MTTD)*1440) as MTBSI from table where Team = 'Team1' GROUP BY MONTHNAME(Date)
ORDER BY FIELD(period,'January','February','March','April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');

这工作正常,给了我下面我想要的结果。

在此处输入图像描述

1 : 现在在查询中有公式'(30*24*60)'--> 这里 30 是一个月的天数。

问题:你能帮我自动计算那个月的天数吗?Day(Last_day(Date)) 不起作用,因为它可能需要带日期范围的 where 子句。但是我的查询应该返回动态聚合的所有月份数据。我不是 sql 专家,所以请忽略它的愚蠢问题:)

标签: mysql

解决方案


我只需要在 group by 子句中添加相同的内容,它就起作用了:)。可能是一个愚蠢的人,但我是 sql 新手。因此将 Day(Month(Date)) 包含在 group by 子句中。


推荐阅读