我正在开发一个处理统计数据的网站,用于体育比赛。 I.E我的网站将让用户快速查找哪个(或多个)玩家在游戏/赛季中获得的得分最多,或者1个玩家的记录是针对其他玩家或团队的。
之前游戏的我的数据显示如下
当您点击一轮时。示例round4 game1(飓风与十字军)将显示该游戏的统计数据以及该游戏(两个团队)的所有玩家统计数据。因此:
此外,游戏统计信息也会显示如下:
现在我尝试将其上传到数据库,以便用户可以:
这个问题让我忙了3天,我现在正处于这个阶段,我开始把头发拉出来。我只是无法获得将表格链接在一起的有效方法。
我应该为每个匹配创建一个表吗?或者我应该为所有比赛创建1个表,为所有玩家创建1个表吗?如果是这样,我作为主键使用什么?
我知道这是一个很长的问题所以,如果有人花时间仔细阅读这个谢谢你,如果有人能指出我正确的方向或只是给我一个意见,那将非常感激。我刚刚完全被这个问题困住了。
答案 0 :(得分:1)
以最低适用级别捕获统计信息。您希望将数据库规范化的原则应用于初始设计。这为您提供了最直接的数据捕获方案,同时为您提供了最大的报告灵活性。
一旦您确切地确定了所需的报告并确定了您可能面临的性能挑战,那么您可以应用非规范化来创建报告数据仓库表。
考虑以下逻辑数据模型:
答案 1 :(得分:0)
如果希望教学如何钓鱼....
写出您认为自己拥有的实体以及他们拥有的属性。属性可能是另一个实体。例如,Team实体具有Name属性和多个Player属性。但是Player也是一个具有Name属性的实体,可能还有一些Statistics属性。
这将为您提供表(实体)及其列(属性)的起点。如果属性也是实体,则从属性到实体绘制一条线:这些是您的关系。然后获取将数据放入第三范式(3NF)的示例,并按照示例将步骤应用到图表中。完成后,您将获得良好的数据库设计。
干杯 -
答案 2 :(得分:0)
您应该将所有“游戏”表加入一个表中。只需添加所需的额外信息:
列:
这也可以让您一次性对所有游戏进行更有趣的搜索和统计。更好的是,您拥有的灵活结构可用于未来可能出现的任何数量的游戏和团队。