gpt4 book ai didi

mysql - SQL 区分日期并忽略时间

转载 作者:行者123 更新时间:2023-11-29 05:20:07 26 4
gpt4 key购买 nike

我希望仅根据日期 来区分下表,同时取平均值。有办法吗?

SELECT DISTINCT DATE_FORMAT(Date, '%Y-%m-%d'),
AVG(value) AS Timestamp
FROM abc GROUP BY Date

表abc

+--------------------+-------+
| Date | value |
+--------------------+-------+
| 18-Nov-2013 12:34 | 5 |
| 19-Nov-2013 14:45 | 4 |
| 20-Nov-2013 15:11 | 3 |
| 21-Nov-2013 08:33 | 2 |
| 21-Nov-2013 11:11 | 7 |
| 21-Nov-2013 15:15 | 8 |
+--------------------+-------+

最佳答案

你可以这样做:

SELECT DATE_FORMAT(Dat, '%Y-%m-%d') AS dt,
Avg(val) AS Timestamp
FROM abc
GROUP BY dt

您可以像我在上述查询中所做的那样,使用其在 MySQL 中的别名按评估列分组依据。某些 DBMS(例如 SQL Server)不允许此类 SQL,因此在这种情况下,您可以使用子查询或按函数分组,例如:

SELECT dt,
Avg(val)
FROM (SELECT DATE_FORMAT(Dat, '%Y-%m-%d') AS dt,
val
FROM abc) t
GROUP BY dt

SELECT DATE_FORMAT(Dat, '%Y-%m-%d') AS datetime,
Avg(val) AS Timestamp
FROM abc
GROUP BY DATE_FORMAT(Dat, '%Y-%m-%d')

sqlfiddle

关于mysql - SQL 区分日期并忽略时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27036584/

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