a 和 b 是一对多
b 和 c 也是一对多
c 中存 也 a 的外键 id,这样设计好吗?有什么需要考虑。
是可行,如果直接关联,可否比 joins 省较多时间;
其实我是不建议加,可是组内有个数据库比较厉害的,建议加上,说 joins 更耗时间。
以country,province,city为例:
country: has_many: provinces
province: has_many: cities
多级关联,city对应唯一的country.
个人感觉不存,不知道这样会不会查询耗时之类的,其他有更好的方式。
第一反应是:不存。因为不干净。
第二反应是:可以存。存了能节省查询时间,空间换时间。
第三反应是:可存可不存,各有优劣,如何选择还需要看具体需求/场景。
这个很好解决啊。这个问题就像:一个节点有多个话题,一个话题有多个评论。那么在评论里要不要存储节点 ID。
如果需要查询某个节点下的所有评论,那么就要存储。否则不用存。