首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql数据取错时间

问Mysql数据取错时间
EN

Stack Overflow用户
提问于 2022-10-19 08:55:58
回答 2查看 22关注 0票数 0

我在mysql db上有一些记录,我试着按月分组,数据是正确的,但是三月的时间显示为"2022-03-22",我需要和其他月份一样,比如2022-03-01.。

代码语言:javascript
复制
 time                   month_name  inc_number
2022-01-04 19:58:09     January     39393
2022-02-08 17:36:33     February    90203
2022-03-22 13:40:48     March       82923
2022-04-01 00:14:33     April       23333
2022-05-01 00:31:58     May         33322
2022-06-06 17:21:29     June        33244
2022-07-01 04:19:20     July        90283
2022-08-01 00:07:04     August      8428
2022-09-01 09:40:15     September   10097
2022-10-01 00:30:19     October     6421
2021-12-01 07:12:30     December    8521

下面是im使用的查询

代码语言:javascript
复制
SELECT
  created_on as 'time',
  MONTHNAME(created_on) AS 'month_name',
  count(distinct id_number) AS "inc_number"
FROM test_reports
WHERE
   MONTH(created_on)
GROUP BY MONTH(created_on)
ORDER BY MONTH(created_on)

请建议每个月的第一次约会是获得所有时间的方法。

EN

回答 2

Stack Overflow用户

发布于 2022-10-19 09:07:06

如果使用GROUP BY而不指定列,MySQL将只使用“数组”中的一个created_on值。相反,您应该定义created_on的预期输出并将其添加到您的组中,您可以使用类似DATE_FORMAT(created_on, '%Y-%m-01')之类的内容来始终显示该月份的第一天。

票数 1
EN

Stack Overflow用户

发布于 2022-10-19 09:28:39

工作,谢谢你

代码语言:javascript
复制
SELECT
  created_on as 'time',
  MONTHNAME(created_on) AS 'month_name',
  count(distinct id_number) AS "inc_number"
FROM test_reports
WHERE
   MONTH(created_on)
GROUP BY DATE_FORMAT(created_on, '%Y-%m-01')
ORDER BY MONTH(created_on)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74122534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档