我有一个表tc_res_rating,它看起来像这样:
| 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如下所示:
| 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_id的tc_res_rating中
对于这种类型的场景,这是正确的表模式吗?
发布于 2017-02-21 17:06:02
您可以做的一件事是从tc_res_reviews表中删除重复的列(res_id和user_id)。
我可以完全删除tc_res_reviews表,因为我们可以保存审查本身在tc_res_rating表。我相信一个用户只能给一家餐厅一次评论。
列评论可以允许为空,以便只想对餐厅进行评级的用户可以保存对餐厅的评级。
https://stackoverflow.com/questions/42360795
复制相似问题