Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 当每个报告输出都是唯一的(如调查)时,如何构建数据仓库?_Sql Server_Data Warehouse - Fatal编程技术网

Sql server 当每个报告输出都是唯一的(如调查)时,如何构建数据仓库?

Sql server 当每个报告输出都是唯一的(如调查)时,如何构建数据仓库?,sql-server,data-warehouse,Sql Server,Data Warehouse,我使用SQLServer2008R2存储来自Web应用程序的调查问题和答案 出于报告性能的原因,我正在考虑在事务数据库之外创建一个数据仓库 我需要的报告相当简单: 每个列标题代表一个调查问题 每一行代表问题的答案 两种不同调查的示例: 由于每项调查都是独一无二的——作者可以提出他们想要的任何问题并得到不同的答案——将这些结果存储在一个典型的仓库模型中有意义吗?如果是的话,你会如何建议设计 注意:每个调查都与自己的ID关联 谢谢 因为这是一个数据仓库,所以我要回答这个事实。不需要进行规范化

我使用SQLServer2008R2存储来自Web应用程序的调查问题和答案

出于报告性能的原因,我正在考虑在事务数据库之外创建一个数据仓库

我需要的报告相当简单:

  • 每个列标题代表一个调查问题
  • 每一行代表问题的答案
两种不同调查的示例:

由于每项调查都是独一无二的——作者可以提出他们想要的任何问题并得到不同的答案——将这些结果存储在一个典型的仓库模型中有意义吗?如果是的话,你会如何建议设计

注意:每个调查都与自己的ID关联


谢谢

因为这是一个数据仓库,所以我要回答这个事实。不需要进行规范化,因为您只需要插入和选择

Answer
------
Answer Text
Question Text
Survey ID
主键是(答案、问题、调查ID)。在(问题,调查ID)上还有另一个唯一的索引

如果调查的日期和时间可用,我会在答案表中添加一个调查时间戳

此表将回答以下问题

  • 确定的答案多久给出一次
  • 某些问题多久被问一次
  • 对某些问题给出特定答案的频率是多少
如果您正在寻找一个规范化的事务数据库,那么下表将更合适

Survey
------
Survey ID
...
如果没有其他调查信息,则不需要此表

Question
--------
Question ID
Survey ID
Question Text
...
问题ID是一个自动递增的整数。测量ID是返回测量表的外键

Answer
------
Answer ID
Question ID
Answer Text
...
答案ID是一个自动递增的整数。问题ID是返回问题表的外键

此表格设计将回答以下问题

  • 调查是什么样的

除非我有迫切的需要,否则我会将其保持在事务形式。“作者可以问任何他们想问的问题”。。。如果绝对没有问题目录,甚至没有每个调查的明确问题数量,除了“一个接一个”之外,没有其他格式可以填写。也许为您的调查考虑一些标准是有意义的——如果可能的话……是的,我正在开发的是一个继承的应用程序:)