我有一个表格,称为teams(id,name,...)。我有一个表格,称为divisions(id,name,......)。我希望diviosn在一个divsion中为每个团队保存teams.id。团队可以分成多个区域。我该如何设置?

最佳答案

假设你的桌子看起来像这样

teams
-teamId
-teamName

divisions
-divisionId
-divisionName


我认为您正在寻找的是一个多对多链接表

membership
-divisionId
-teamId


这样您就可以找到一个部门中的所有团队

select teamId
from team t
join membership m
  on m.teamId = t.teamId
where m.divisionId = 'theIdYouWant'


它还将允许您要属于一个部门的团队数量尽可能多,而要包含相同团队的团队数量则要尽可能多。这是一个多对多关系表。

10-08 17:33