【发布时间】:2021-04-09 14:24:21
【问题描述】:
我有两张桌子:
表 A:
| ID | CODE | time-stamp |
|---|---|---|
| Aid_z | code_z | 2020-07-21 |
| ... | ... | ... |
| Aid_1 | code_1 | 2020-11-30 |
| Aid_2 | code_2 | 2020-11-30 |
| Aid_3 | code_2 | 2020-11-30 |
| Aid_4 | code_1 | 2020-11-30 |
| Aid_5 | code_3 | 2020-11-30 |
| ... | ... | ... |
| Aid_n | code_x | 2021-04-06 |
ID 是唯一的,有 67 个不同的 CODE。
表 B:
| ID | ID_A | status | value | time-stamp |
|---|---|---|---|---|
| Bid_z | Aid_z | z | ... | 2020-07-21 |
| ... | ... | ... | ... | ... |
| Bid_1 | Aid_1 | 1 | 101.1 | 2020-11-30 |
| Bid_2 | Aid_2 | 0 | 87.6 | 2020-11-30 |
| Bid_3 | Aid_3 | 0 | 76.2 | 2020-11-30 |
| Bid_4 | Aid_4 | 1 | 106.2 | 2020-11-30 |
| Bid_5 | Aid_5 | 2 | 124.6 | 2020-11-30 |
| ... | ... | ... | ... | ... |
| Bid_n | Aid_n | x | ... | 2021-04-06 |
ID 是唯一的,ID_A 与表 A 中的 ID 相同。
我需要做的是:
- 计算每天有多少记录
- 每个不同代码的计数数量
- 将它们显示为一列,每一行应代表一天
- 仅适用于表 B 中的状态“0”或“1”
- 仅适用于 2020-11-30 和 2021-02-06 之间的记录
最终结果应该是这样的:
| date (per day) | sum_of_this_day | code_1 | code_2 | code_2 | ... | code_z |
|---|---|---|---|---|---|---|
| 2020-11-30 | 35 | 5 | 0 | 10 | ... | x |
| 2020-11-31 | 60 | 6 | 5 | 12 | ... | x |
| ... | ... | ... | ... | ... | ... | ... |
| 2021-02-06 | 47 | 6 | 5 | 12 | ... | x |
【问题讨论】:
-
到目前为止你尝试了什么?
-
考虑到日期范围和状态,我已经计算了 WHERE 子句。但是我有问题将所有内容放在一个查询中,从而得到我帖子中所述的结果 - 每天分别对应代表不同代码的每一列。有可能做出这样的吗?