数据库/table 结构 - 相似的条目与过多的规范化?

Database / table structure - similar entries vs. too much normalization?

我设计了这个关系数据库,它随着时间的推移跟踪各种资产及其所有者。我想做的最重要的分析之一是跟踪这些资产随时间的价值:预期原始成本、实际原始成本、实际成本等。所以我一直在将与成本/价值相关的数据放在单独的 table 称为“Support_Value”。使事情复杂化的是,我跟踪的一些资产位于使用外币的国家/地区,因此我以美元和当地货币(“LC”)收集成本/价值数据,这最终使我拥有的列数翻了一番在此 table。我还使用此 table 作为一种以类似方式跟踪资产所有者自身价值的方法。 - 此 table 的列如下:

我最初的计划是分开 table 来处理 (1) 与成本和价值相关的条目的各种“质量”(即“计划”、“上限”、“下限”,分析师“估计”,“实际”和另一个table跟踪)和(2)另一个货币。但我意识到这很可能会中断,因为它不允许有一个初始的“计划”成本,然后再进行修改,除非我们通过为修改后的附件创建新列来明确说明,但这样可以有不止一个修改。所以还是不够完美。

我现在设想的是创建一个不同的值 table,它将包含以下列:

如何看待这种做法?这是改进吗?

感谢您的任何建议!

两种方法都可以。

但是,如果您认为您可能需要其他类似的专栏, 那么第二种方法更具可扩展性。

你的第二种方法,它看起来确实过度规范化了, 我建议将 "Quality" 列拆分回它的部分。

类似的东西:

  • "ID"
  • "Currency"
  • "Asset"
  • "Date"
  • "Type"

  • "Planned"

  • "Lower"
  • "Upper"
  • "Estimated"

  • "Actual"

  • "Valuation"

干杯。