我正在运行一个计划任务,它每晚都会在设定的时间检查一个属性的值。我的计划是根据返回的值建立一个前端。
目前,我每晚都会在我的数据库中返回超过800行,因为要返回这么多数据。
其中一列是运行查询的日期 - 这让我感到很困惑,因为对于每组属性(即每晚运行计划任务),此dateTime值都是相同的。< / p>
从数据库中删除此冗余/重复日期的最佳方法是什么?
目前我的标题是:
Id -- Name -- AttributeIMeasure -- dateRan
感谢您的帮助!
答案 0 :(得分:3)
我很想创建一个单独的表RunInformation
,其中包含主键列Id
和RunDate
列:
Id -- RunDate
然后,您可以使用对dateRan
表的引用替换表中的RunInformation
列。如果需要,这将允许您将来存储有关运行的其他信息。
Id -- Name -- AttributeIMeasure -- RunInformationId
答案 1 :(得分:1)
我不会删除此冗余。
你能某些,你不会只更新一个组的部分吗?
- 某种失败或错误?
- 未来要求的变更?
此外,冗余的真正缺点是什么?你想解决什么实际的问题?
如果你确实需要这样做,那么你只需要一种将属性映射到组的方法。
创建一个attribute_groups
表(至少包含id和dateRan字段),并在原始表中添加attributeGroupID
字段。
但我仍然没有看到架构复杂性的增加,获得DateRan值所需的额外连接以及增加的约束,在这种情况下是否值得。