我的问题的简化版本如下:
我有三个表记录、输入和输出。
记录
Id
DTS
1
2015-01-01 00:00
...
输入
Id
RecordId
InputId
Value
1
1
1
100
...
...
N
1
1
105
输出
Id
RecordId
OutputId
Value
1
1
1
200
...
...
M
1
1
10
这样做是为了避免由于表中列数的限制而限制输入或输出的总数。我正在寻找针对类似于以下内容的查询的最佳(最快)方法:
DTS
Input1
...
InputN
Output1
...
OutputM
2015-01-01 00:00
100
...
105
200
...
10
...
我最初的计划是基于旋转必要的输入和输出并适当地加入它们来创建一个视图。数据只需要只读并且本质上是静态的,所以我想防止它为每个查询扩展。我读到我可以向视图添加索引以“具体化”它,但是如果视图使用 PIVOT,则无法做到这一点。
有没有人对我如何做到这一点有任何建议?或者,如果我以错误的方式处理这个问题,我很乐意接受建议。