【发布时间】:2021-11-05 17:00:45
【问题描述】:
我敢打赌,标题并没有清楚地说明我作为一个完整的新手想要达到的目标,但会尝试在下面解释我的问题,并希望有人能抽出时间分享他们的智慧:) 假设我们有一个名为 TYPES (Microsoft SQL Server) 的表定期更新,即每半小时更新一次。它由独特的类型组成,对于每种类型,每个更新窗口都有提供的交易数量(如果有的话)(实际上它有数百万行、数百种类型和数十列保存了几年) 但为了简单起见:
| DateTime | Type | Offered |
|---|---|---|
| 2021-11-04 09:00 | Type1 | 300 |
| 2021-11-04 09:00 | Type2 | 30 |
| 2021-11-04 09:00 | Type3 | 255 |
| 2021-11-04 09:30 | Type 1 | 244 |
| 2021-11-04 09:30 | Type 2 | 118 |
| 2021-11-04 09:30 | Type 3 | 90 |
如果可能的话,我正在尝试对给定日期(24 小时内)为选定类型(比如说 type1 和 type3)分别提供的总和,即:
| DateTime | Type1_sum | Type3_sum |
|---|---|---|
| 2021-11-04 | 5621 | 4521 |
| 2021-11-05 | 5234 | 3651 |
非常感谢!
【问题讨论】:
-
那么您如何获得所需的值,尤其是因为您的示例数据只有 2021-11-04 的日期?请注意,不建议将列命名为与保留字相同的名称,因为它要求它们是 [delimted] 并且不会传达任何含义。
-
SELECT SUM(offered) FROM Types GROUP BY trunc(date), type将是一个起点。但这对于每种类型都会有一行