PostgreSQL 中的多对多关系

问题描述 投票:0回答:0

数据库中有两个表。

第一个表是“用户”。它有两列。 user_id 列和扇区_id 列。

  • 用户可以关注多个扇区。这会导致 user_id 出现在多行中,但具有不同的ector_id
  • 同一个扇区可能会被不同的用户关注。这会导致扇区_id 出现在多行中,但 user_id 不同

示例:

用户ID 扇区_id
用户1 123
用户1 234
用户2 453
用户2 123

第二个表是“文章”。它有两列。一个article_id列和一个sector_id列。

  • 不同的文章有可能具有相同的扇区。

示例:

文章_id 扇区_id
文章1 123
文章2 234
文章3 453
文章4 123

我想了解每个用户有多少篇文章可用。如果用户关注某篇文章的部分,则该用户可以访问该文章。

我想对扇区ID进行连接。但由于许多用户和许多文章可以共享相同的部门 ID,不确定这是否是正确的方法。

sql postgresql join many-to-many one-to-many
© www.soinside.com 2019 - 2024. All rights reserved.