我有一个表格,称为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'
它还将允许您要属于一个部门的团队数量尽可能多,而要包含相同团队的团队数量则要尽可能多。这是一个多对多关系表。