数据库设计允许时间

时间:2012-07-22 16:12:23

标签: mysql database database-design

所以,我想要一个我必须及时表示的数据表。

也就是说,我希望随着时间的推移收集数据并将其记录下来。

目前,该表具有id,具有类别名称的列和值的列。

大约有十个类别 - 每个类别都有一个与现在出现次数相关的值。

在这种情况下,表达时间的最有效方法是什么?为每一行分配一个时间戳列?然后当我想显示这些信息时,仅通过时间戳收集?我真的在这里失明。

这是否需要具有多个重复的类别列值?

这完全在MySQL中。

让我澄清一下:

三栏:

ID |类别|值

我想记录一段时间内的值 - 我将每小时进行一次解析。

类别如下:

快乐

悲伤

愤怒

如何用此记录时间数据?我想保持每小时的价值。

我在考虑用时间戳数据重复所有类别。这是最好的主意吗?

所以你有

Category | Value |  Time
Happy    |    0  |  072012
Happy    |    2  |  072112
Happy    |    1  |  072212

等 - 这就是我想要存储不断变化的数据。

2 个答案:

答案 0 :(得分:1)

什么是时间戳,与类别或类别的子项相关的数据?如果它与类别相关,那么向该类别添加时间戳字段可能是最好的。如果它是一个现在(或将来)与子项中的事务相关的概念(因此孩子已经拥有此信息),我可能会使用查询/视图(如果存在性能问题,则使用物化视图) 。它还可能取决于您在下级表中看到时间戳更改和可能的数据访问要求的频率。

答案 1 :(得分:0)

  • MeasuredAt是时间戳
  • 您也可以使用FeelingName代替int ID,它只会占用更多空间。

enter image description here


修改

enter image description here