[英]Database design to allow for time
因此,我想要一个必须及时表示的数据表。
就是说,我想随着时间的推移收集数据并记录下来。
当前,该表具有一个ID,一个带有类别名称的列和一个用于值的列。
大约有十个类别-每个类别都有一个与当前发生次数相关的值。
在这种情况下表示时间的最有效方法是什么? 为每一行分配一个时间戳列? 然后,当我想显示此信息时,仅通过时间戳收集? 我真的在这里瞎瞎了。
这会要求类别列具有多个重复的值吗?
这一切都在MySQL中。
让我澄清一下:
三栏:
ID | 分类| 值
我想记录一段时间内的值-我将每小时进行一次解析。
类别如下:
快乐
伤心
愤怒
等等
如何以此记录时间数据? 我想保留每小时的值。
我正在考虑仅使用时间戳数据重复所有类别。 那是最好的主意吗?
所以你有
Category | Value | Time
Happy | 0 | 072012
Happy | 2 | 072112
Happy | 1 | 072212
等等-这就是我想存储不断变化的数据的方法。
什么是时间戳,与类别相关的数据或该类别的子级? 如果与类别有关,则最好在类别中添加一个时间戳字段。 如果这个概念现在(或将来)与子项中的事务相关(因此子项将已经有此信息),那么我可能会使用查询/视图(如果存在性能问题,则使用物化视图) 。 它还可能取决于您看到时间戳更改的频率以及从属表上可能的数据访问要求。
MeasuredAt
是时间戳 FeelingName
而不是int ID
,它将使用更多空间。 编辑
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.