gpt4 book ai didi

mysql - GROUP BY DAYNAME 不包含今天的记录?

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

我正在使用 SQL 语句通过 PHP 将按天分组的日期和总和通过 ajax 发送到 JavaScript 图表。该语句不返回今天的记录,这些记录确实存在。

我做了一个通用选择以确保有今天的记录。

要重新创建,您需要一个包含日期时间 Created 字段和整数 price 字段的表,其中包含过去 8 天(包括今天)的记录。

+---------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+----------------+
| Created | datetime | YES | | NULL | |
| price | int(10) | YES | | NULL | |
+---------+-------------+------+-----+---------+----------------+

示例数据

2019-08-12 23:04:03      7 
2019-08-13 00:22:20 7
2019-08-13 22:41:13 7
2019-08-13 23:23:23 7
2019-08-13 23:37:27 7
2019-08-14 03:53:29 7
2019-08-14 23:15:22 7
2019-08-14 23:44:17 7
2019-08-14 23:52:01 7
2019-08-15 00:24:47 20
2019-08-15 00:24:49 7
2019-08-15 00:45:53 7
2019-08-16 22:03:01 7
2019-08-16 23:13:03 7
2019-08-16 23:28:25 7
2019-08-16 23:43:05 7
2019-08-17 00:26:22 7
2019-08-17 00:32:38 7
2019-08-17 00:41:14 7
2019-08-17 04:45:11 7
2019-08-17 06:38:33 7
2019-08-17 08:55:23 20
2019-08-17 09:13:39 7
2019-08-17 23:12:00 7
2019-08-17 23:54:23 7
2019-08-18 00:26:11 7
2019-08-18 23:28:21 7
2019-08-18 23:28:54 20
2019-08-19 00:52:18 7
2019-08-19 10:19:58 7

查询

SELECT DAYNAME(Created) AS theday,SUM(price) AS thesum 
FROM mytable
GROUP BY DAYNAME(Created)
ORDER BY Created asc LIMIT 7;

我希望上述内容返回包括今天在内的最近 7 天的数据,但它返回截至昨天的最后 7 天的数据。

最佳答案

您的查询是按“创建”ASC 或升序排序。这意味着记录将按“创建”列从最小到最大的顺序排序。您的结果将在顶部列出 2019-08-12 的行,在底部列出 2019-08-19 的行。由于有 8 行,并且您将结果限制为返回 7 行,因此 2019-08-19 的行将不会显示在结果中。

只需将“ASC”替换为“DESC”,您就应该得到您想要的结果。

关于mysql - GROUP BY DAYNAME 不包含今天的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57555575/

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