SQL查询合并所有具有相同问题ID的答案

时间:2019-05-31 04:05:30

标签: sql database postgresql database-design

我必须为提问者表单设计数据库表。我正在使用Postgres DB。由于问题的数量是固定的,并且下面的要求是一个问题只能有一个答案,因此我在下面给出了较早的方法。

var text = `This is a super long string with some stringification, if that even is a word, and possibly even get stringified, I guess.`;
text.match(/string*/g);
id  submit_by_id    q-1   q-2   q-3

但后来要求已更改,一个答案可以有多个答案。我不想将答案另存为JSON格式,因为我必须执行搜索,过滤和排序操作。上述设计的问题在于,如果要保存多个答案,则必须重复冗余信息。例如

1       12           a     b     c
2       12           a     b     c
3       11           a     b     c
id  submit_by_id    q-1   q-2   q-3

为克服此问题,我设计了两个单独的表

问题表

1       12           a     b     c
2       12           a     b     c
3       11           a     b     c
4       12           d     b     c
    
id  question    

answer表

1   xyz     
2   abc     
3   cda 
    
id  submit_by_id    question_id    answer

这样,重复信息的数量就会更少。 因此,问题是如何从查询中获得集体答案。我想像这样发送回复

1       12             1            espn
2       12             1            star
3       11             2            xyz
4       11             3            abc

或者有没有更好的方法可以做到这一点。

0 个答案:

没有答案