database - 设计表 : One to many and one to one at same time?

标签 database database-design

我不确定我是否正确地为这种类型的关系建模,也许有人可以提供一些见解来判断这是否合理:

假设我们有一个典型的亲子类型关系,其中每个 parent 都可以有很多 child ,但我们需要跟踪 parent 的单例(喘气)最喜欢的 child ......


表父级

- FavoriteChildID


表子

- parent 身份

所以链接是纵横交错的,其中一个是多对一,另一个是一对一。这被认为是好的设计吗?在子表中有一列,在任何时候只能将一行标记为收藏夹,这样会更好吗?还有别的吗?

谢谢。

最佳答案

多一张 table 怎么样?

table favourite(
  ,parent_id
  ,child_id
  ,primary key(parent_id)
);

如果对于所有面向收藏夹的查询,这将有所帮助。

关于database - 设计表 : One to many and one to one at same time?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4636526/

相关文章:

ruby-on-rails - 我如何扩展这个 Ruby ActiveRecord 模型?

python - 使用 Python 脚本在 ClearDB 上搜索 MySQL 数据库

c# - 使用甲骨文数据库。进入以下语句 ."ORA-00936: missing expression",如何解决这个问题?

sql - 数据库设计——它是否尊重 3rd NF?

sql - 分层属性建模

mysql - 对值表中的序列建模的好方法是什么?

php - 使用 PHP/MySQL 从包含多个值的列中提取单个值

php - 我想登录我的 cpanel 并从 cpanel 更新或删除文件

linux - Perl 信号处理会截断与数据库的连接并导致错误

database - 具有多个条目的 DBIX 预取有效但会抛出哈希错误,有没有办法解决这个问题?