【发布时间】:2013-05-17 03:52:23
【问题描述】:
我正在从事一个项目,我必须处理存储电站仪表读数的大型列表。目前日期存储在下表中。
表 A
Date, Block No, Station 1, Station 2, ....... , Station N (N can go upto 650)
2013-05-21, 10, 23, -45,........ , 57
现在有另一个表 B,其中包含从表 A 派生的字段。
表 B
Date, Block No, F1, F2, ....... , FX
2013-05-21, 10, 23, -45,........ , 57
这里的表 B 字段派生如下
- F1= 1 号站 + 3 号站,
- Fx = p 站 + r 站 + w 站
现在我想改变这种为每个站点和派生字段设置一个字段的方法。 我想制作如下表格。
我的表 A
Date, Block, Station_Name, Reading
2013-05-21, 10, Station 1, 23
2013-05-21, 10, Station 2, -45
.
.
.
2013-05-21, 10, Station N, 57
我的问题是:
- 我提议的标准化设计是否会对处理产生影响?
- 一般应如何设计此类表,最佳做法是什么?
- 与以前的方法相比,我更新表 B 的派生字段的方法中的 SQL 会更复杂吗?
【问题讨论】:
-
您尚未向我们展示您当前更新表 B 的方法,因此要求对复杂性变化进行评估有点过分。另外,有什么理由 B 是表而不是视图?
-
我从您的问题中了解到,表 A 将有大约 650+ 列。如果我是对的,那么 RDBMS 对你来说不是一个好的选择。你应该选择像 cassandra 这样的 NOSQL 数据库。
-
OP 正在讨论将 away 从 650 列的设计更改为包含 4 列的设计。
-
@Damien 表 B 已通过 UPDATE SQL 查询进行更新。