我正在设计一个数据库来存储通过 API 从我们的调查平台 - Wufoo 收集的调查回复。每个调查都有不同数量的问题。每个调查都有一个 ID,每个响应也有一个 ID。我希望将数据存储为高效且足够灵活的数据,以便通过查询同时检索多个问题。
一种选择是将其存储为具有列的表 - Survey_Id、Response_Id、Question 和 Response。即,来自 API 的每一行响应将在单个表中包含许多行。
另一种选择是有两个表,称为问题和响应。每个表可以有大约 50 列命名 - Q1、Q2、Q3、Q4 等。然后我可以将所有问题(一次)存储在问题表中,并且对于每个响应,将值以相同的顺序存储在响应表中Q1、Q2、Q3 等的检索。在读取响应表时,我可以使用 Question 表中的值作为列名的别名,很可能使用存储过程。
如果您打算使用数据进行报告,您会选择上述哪个选项,并且可能预见到潜在的问题?还是有其他方法来存储调查回复?