在排球比赛中,你通常有best of five
规则。这意味着最多可以播放5套。第一个直到25
,最后一个直到15
。分数可能如下所示:
25:23 - 23:25 - 25:16 - 11:25 - 15:10 => Team A wins against Team B 3:2
25:10 - 25:21 - 25:13 => Team A wins against Team B 3:0
对于培训或在学校,您可能还想玩best of three
,例如
25:13 - 11:25 - 15:10 => Team A wins against Team B 2:1
25:13 - 25:10 => Team A wins against Team B 2:0
你也可以说设定的长度不是25
而是15
,例如
15:13 - 11:15 - 15:10 => Team A wins against Team B 2:1
15:13 - 15:10 => Team A wins against Team B 2:0
所以当你开始比赛时,你选择最多的数量。设置(5
或3
)和设置长度(25
或15
)。
您如何将其存储在规范化数据库中?目前我的架构看起来像这样。
id | name | set_lengths
----------------------------------------
1 | men bronze | [25, 25, 25, 25, 15]
2 | woman final | [15, 15, 15]
在过去的几周里,我读了很多关于规范化的内容,据我所知,使用数组并没有真正规范化。任何想法如何在不使用数组的情况下实现这一目标?
答案 0 :(得分:0)
一个简单的解决方案可以基于两个表格 匹配并设置
在匹配表中,匹配名称为匹配类型(3或5组)和team1和team2的团队名称
team
id, name
或者您也可以添加团队表
match
id, name, match_type, id_team1, id_team2
,在这种情况下
x = features[params['input_name']]
答案 1 :(得分:0)
用于控制集类型的表:
Set_Type: set_type_id, description, min_points
ex: 1, 'Tie Break', 15
匹配表本身:
Match: match_id, name, team1, team2
ex: 10, 'Final Men', team1, team2
另一个作为集合的中间表
Match_Set: match_id, set_type_id, score_team1, score_team2, nr
ex: 10, 1, 10, 15, 5