我正在为我的朋友开发数据库评分系统。我有游戏的表和第二个表运动名称(footbal,tenis,floorball)。我想存储几十个游戏,但我不知道如何根据特定的分数需求设计数据库。
例如:
足球比分 - 1:2,2:2(上半场和下半场)
Tenis集 - 6:4,7:6
Floorbal - 1:0,3:0,3:2(比赛的第1,第2和第3部分)
我需要将此分数链接到游戏桌,但我需要特定的表格列来存储每个游戏的分数。
我想:
从我的角度来看,唯一的问题是:
感谢您的帮助
答案 0 :(得分:0)
E.g:
vec <- c("5T", "14S", "1A", "12N")
gtools::mixedsort(vec)
# [1] "1A" "5T" "12N" "14S"
答案 1 :(得分:0)
你提到MySQL,所以你似乎想要开发一个关系数据库。
第一步是定义关系。根据你的例子。
基于这些关系,我们可以定义3个表。
Sport
-----
Sport ID
Sport name
...
Game
----
Game ID
Sport ID
Game name
PeriodScore
-----------
PeriodScore ID
Game ID
Period
Score
主要ID字段称为盲密钥。它们是自动递增整数。他们唯一的目的是将游戏与运动联系在一起,并且比赛时期与游戏相关。否则,它们毫无意义。主ID字段是其各自表的主要(聚类)键。
游戏桌中的运动ID是外键。这个关键点指向Sport表,因此您可以获得这项运动的名称。如果你想要一个特定运动的游戏列表,你可以在(运动ID,游戏ID)上创建一个独特的索引。
PeriodScore表中的游戏ID是另一个外键。您必须在(游戏ID,PeriodScore ID)上创建唯一索引,以便您可以按正确顺序检索期间分数。
如果要创建关系数据库,首先要定义关系,然后执行normalization的过程。