gpt4 book ai didi

mysql - 计算 16 点之后发布的消息的(第二天)日期 :00

转载 作者:行者123 更新时间:2023-11-29 06:08:15 25 4
gpt4 key购买 nike

考虑下表:

+---------+---------+------------+----------+------------+
| msg_id | user_id | _date | _time | count_for |
+-------------------+------------+----------+------------+
| 1 | 1 | 2011-01-22 | 06:23:11 | 2011-01-22 |
| 2 | 1 | 2011-01-23 | 16:17:03 | 2011-01-24 |
| 3 | 1 | 2011-01-23 | 17:05:45 | 2011-01-24 |
| 4 | 2 | 2011-01-24 | 06:58:13 | 2011-01-24 |
| 5 | 2 | 2011-01-24 | 15:59:32 | 2011-01-24 |
| 6 | 3 | 2011-01-25 | 13:45:00 | ... |
| 7 | 3 | 2011-01-26 | 13:22:34 | ... |
+---------+---------+------------+----------+------------+

我想统计每天的消息数,但是当天16:00之后的消息必须统计到第二天: - msg 1 是在 2011-01-22 16:00 之前写入的,因此 count_for 是(同一天)2011-01-22 - msg 2 是在 2011-01-23 16:00 之后写入的,因此 count_for 是(第二天)2011-01-24

显然,前 5 个是我手动完成的。我的问题是:使用什么查询可以自动执行此操作(在 MySQL 中)?

最佳答案

类似的东西

SELECT count(msg_id), if(_time >= '16:00:00', _date + INTERVAL 1 DAY, _date) AS effective_date
FROM yourtable
GROUP BY effective_date

应该可以解决问题。

关于mysql - 计算 16 点之后发布的消息的(第二天)日期 :00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10419777/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com