【发布时间】:2015-07-11 02:52:21
【问题描述】:
我有一张看起来像这样的桌子:
_Datetime | Value
2015-05-01 06:00:00 | 12.3
2015-05-01 06:20:00 | 12.5
2015-05-01 06:40:00 | 12.3
2015-05-01 07:00:00 | 13.5
2015-05-01 07:20:00 | 14.5
2015-05-01 07:40:00 | 14.3
2015-05-01 08:00:00 | 18.2
2015-05-01 08:20:00 | 15.0
2015-05-01 08:40:00 | 15.0
2015-05-02 06:00:00 | 19.2
2015-05-02 06:20:00 | 7.3
2015-05-02 06:40:00 | 11.4
2015-05-02 07:00:00 | 9.5
2015-05-02 07:20:00 | 7.6
2015-05-02 07:40:00 | 6.6
2015-05-02 08:00:00 | 10.4
2015-05-02 08:20:00 | 19.3
2015-05-02 08:40:00 | 15.4
2015-05-03 06:00:00 | 8.7
2015-05-03 06:20:00 | 8.6
2015-05-03 06:40:00 | 8.6
2015-05-03 07:00:00 | 21.5
2015-05-03 07:20:00 | 12.4
2015-05-03 07:40:00 | 7.3
2015-05-03 08:00:00 | 10.8
2015-05-03 08:20:00 | 12.5
2015-05-03 08:40:00 | 10.6
我想:
-选择每天的最小值、最大值和平均值
-选择最小值和最大值发生的时间(我只想选择一行 - 第一行)
_Date | _Min | _MinTime | _Max | _MaxTime | Avg |
2015-05-01 | 12.3 | 06:00:00 | 18.2 | 08:00:00 | 14.18 |
2015-05-02 | 6.6 | 07:40:00 | 19.3 | 08:20:00 | 11.86 |
2015-05-03 | 7.3 | 07:40:00 | 21.5 | 07:00:00 | 11.22 |
我可以轻松获得最小值、最大值和平均值,但我被时间卡住了。
【问题讨论】:
-
您使用的是哪个数据库? mysql还是sqlserver?
-
请显示您目前的查询。
-
我使用的是 SQL Server 2008 R2。
-
查看 group by 并有 sql 子句,然后返回您对 sql 的最佳尝试并发布它。
-
我对 SQL 很陌生,所以我这样做的方式可能不是最好的方式。我创建了 3 个视图:首先是获取最小值、最大值和平均值,并将它们按日、月和年分组。第二个获取每天的最小值时间,第三个获取每天的最大值时间。我现在遇到的问题是,如果一天的表格中有超过一个最小值或最大值,我的视图会列出所有这些值。我还希望所有内容都集中在一个视图中。
标签: sql-server