问题定义:公司希望通过提出一些问题来衡量客户对其产品的满意度。公司的产品数据存储在“产品”表中,每个产品商店的客户数据存储在“客户”表中,每个产品商店的问题存储在问题表中。如下所示:
产品:[id,名称]
客户:[ id, product_id(fk), name ]
问题:[ id, product_id(fk), text ]
问题是,考虑到每个客户只能回答其产品的问题,我们如何设计一个表格来存储每个客户的答案。例如,如果您的答案是这样的:
customer_answer:[ id, customer_id(fk), question_id(fk), answer]
那么它是错误的,因为如果我们的表的样本数据如下所示:
产品: [ 1, "椅子" ], [ 2, "桌子" ]
客户:[1、1、“安东尼·奎恩”]、[2、2、“玛丽莲·梦露”]
问题:[ 1, 1,“对这个产品有什么建议吗?” ], [ 2, 1, “你觉得这把椅子怎么样?” ]
那么可能会有一个包含以下数据的行:
customer_answer: [ 1, 2, 1, '不,谢谢' ]
这是错误的,因为 id #2 的客户没有 product_id #1,所以它可能是这个问题的错误表。
在这种情况下我们能做什么?
没关系,但顺便说一句,我正在使用 mysql 来解决这个问题。