首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >评分表和评审表的数据库表设计

评分表和评审表的数据库表设计
EN

Stack Overflow用户
提问于 2017-02-21 15:08:27
回答 1查看 4.7K关注 0票数 0

我有一个表tc_res_rating,它看起来像这样:

代码语言:javascript
复制
| user_id | res_id | rating | review_id | post_date (CURRENT_TIMESTAMP)|
|    1    |    13  |  4.0   |    3      |  2016-12-14 17:02:12         |
|    2    |    6   |  3.5   |   NULL    |  2016-12-19 20:55:24         |

另一个表tc_res_reviews如下所示:

代码语言:javascript
复制
| review_id | res_id | user_id |    review    |     date_created    |
|     3     |   13   |    1    | [BLOB - 4 B] | 2016-12-14 17:02:12 |

用户可以在没有评论的情况下创建餐厅评级,

因此,评级数据将直接插入到review_id为NULL的tc_res_rating中。

用户还可以插入具有链接到该评论的评级的对餐厅的评论,

因此,评论被插入到tc_res_reviews中,评分被插入到带有review_idtc_res_rating

对于这种类型的场景,这是正确的表模式吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-21 17:06:02

您可以做的一件事是从tc_res_reviews表中删除重复的列(res_id和user_id)。

我可以完全删除tc_res_reviews表,因为我们可以保存审查本身在tc_res_rating表。我相信一个用户只能给一家餐厅一次评论。

列评论可以允许为空,以便只想对餐厅进行评级的用户可以保存对餐厅的评级。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42360795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档