Mysql 每月按天数计算的职位数量

Mysql 每月按天数计算的职位数量,mysql,count,Mysql,Count,我的数据库中有一个表Post,其中包含不同用户的帖子。我想做的是创建一个sql查询,它将根据每个月每天发布的帖子数量返回。请让我知道如何在一个查询中一般地做到这一点,我可以为所有天创建多个查询,但这是最坏的情况。所以我需要专家的解决方案。 谢谢 预期输出: (查询统计每个月内所有天数的职位数量) 日期:员额数目 1:20 2:25 3:10 4:17 30:6 表结构: ID | postd | post |日期 select DAYOFMONTH(date) as Day , count(*

我的数据库中有一个表
Post
,其中包含不同用户的帖子。我想做的是创建一个sql查询,它将根据每个月每天发布的帖子数量返回。请让我知道如何在一个查询中一般地做到这一点,我可以为所有天创建多个查询,但这是最坏的情况。所以我需要专家的解决方案。 谢谢

预期输出: (查询统计每个月内所有天数的职位数量)

日期:员额数目

1:20

2:25

3:10

4:17

30:6

表结构:
ID | postd | post |日期

select DAYOFMONTH(date) as Day , count(*) as Number_of_posts
from table
group by DAYOFMONTH(date)
您应该知道,若表中包含来自不同月份的数据,则帖子数量将是错误的。
因此,“分组依据”应该是“按日期”,并且您应该在“选定”中使用“日期”,而不是“月的哪一天”

SELECT date, COUNT(id) as number_of_posts FROM table_name GROUP BY date.
您应该知道,若表中包含来自不同月份的数据,则帖子数量将是错误的。
因此,“分组依据”应该是“按日期”,并且您应该在“选定”中使用“日期”,而不是“月的哪一天”

SELECT date, COUNT(id) as number_of_posts FROM table_name GROUP BY date.
如果要查询特定月份(例如,二月),请使用以下命令:

SELECT DAYOFMONTH(date), count(*) FROM Post
WHERE MONTH(date) = '2'
GROUP BY DAYOFMONTH(date)
ORDER BY DAYOFMONTH(date) ASC;
注意:使用函数时,月份以数字形式返回

编辑:如果您希望返回给定月份内每天的计数,那么我会将您推到这里-这是一个对类似问题的公认答案:

如果要查询特定月份(例如,二月),请使用以下命令:

SELECT DAYOFMONTH(date), count(*) FROM Post
WHERE MONTH(date) = '2'
GROUP BY DAYOFMONTH(date)
ORDER BY DAYOFMONTH(date) ASC;
注意:使用函数时,月份以数字形式返回


编辑:如果你想返回某个月内每天的计数,那么我会把你推到这里——这是一个类似问题的公认答案:

你尝试过什么吗?至少,您应该提供相关的表定义,例如“USER”和“POST”。我尝试过,但最终我只计算了一天的帖子数量,而不是一个月内的所有天数。可能是重复的。您尝试过什么吗?至少,您应该提供相关的表定义,例如“USER”和“POST”。我试过了,但结果是我只计算了一天的帖子数量,而不是一个月内的所有天数。查询的可能重复项是仅从整个月返回一天的帖子数量。我希望所有天数的查询都会返回帖子数量,例如如果月份是2月,那么它首先计算第1天的帖子数量那么第2天等等,你的意思是所有天的返回计数,即使它们是“0”吗?是的,比如第1天=24,第2天=25,第3天=0,第4天=5等等,这实际上在SQL中更具挑战性(不用说使用PHP),所以最好向您指出这个问题和很好的答案:。希望对你有所帮助。这个查询只返回整个月的单日帖子数量。我希望所有的天数都是这样。查询返回帖子数量,比如如果月份是2月,那么它首先计算第1天的帖子数量,然后是第2天,如此等等。你的意思是所有天数的回复数量,即使是“0”?是的,比如第1天=24,第2天=25,第3天=0,第4天=5,等等,这实际上在SQL中更具挑战性(不用说使用PHP),所以最好向您指出这个问题和很好的答案:。希望有帮助。