【发布时间】:2019-07-10 11:30:56
【问题描述】:
我最近遇到了一个结构如下的 SQL 表:
int ID,
INT Id,
NVARCHAR(50) ItemNumber,
INT January,
INT February,
...,
INT December,
INT Year
这个整数列是指定列名月份和年份的销售额。我很感兴趣这个逻辑是否适用于 SQL 表。创建另一个表不是更专业吗,我们可以在其中存储例如月份,并从上一个表中引用该表,例如 monthId,这里还有另一列 Count ?
【问题讨论】:
-
是的。一个正确的规范化 能有一个
monthid列和一个值列 -
那 appears 打破了范式,如果这就是你要问的并且(如果它不是数据仓库)我不确定你为什么需要存储此类数据(例如,已汇总);它可以通过查询您的源表来派生。除非经常更新,否则此类表格往往会“过时”
-
它到底破坏了哪种范式?
-
没关系。我以为你在问什么是正常形式。
标签: sql sql-server tsql