设计频率变化的时间序列SQL数据库

时间:2019-07-03 02:52:24

标签: database-design

假设我有一个像这样的数据结构:

date | valueA | valueB
1/1/2019|1|null
1/2/2019|2|null
1/3/2019|3|null
...
1/31/2019|30|100
2/1/2019|29|null
2/2/2019|30|null
...
2/28/2019|30|200
...

从本质上讲,我们有valueB列(每月频率)和valueA列(每日频率)。 在这种情况下,数据库设计的最佳实践是什么?现在存放桌子对我来说很不好。毕竟ValueB列存储了大量的NULL值。

在我看来,将valueB列分为一个仅存储每月频率的单独表似乎是一个更好的设计。但是,在很多情况下,我们将同时需要valueA和valueB。还是应该将此表存储在实体/值设计中?如下所示:

date|item|item_value
1/1/2019|valueA|1
1/2/2019|valueA|2
...
1/31/2019|valueA|30
1/31/2019|valueB|100
...

0 个答案:

没有答案