如何设足球联赛积分榜这样的关系型数据库呢?
我是想弄一个关于足球联赛的积分榜数据库。
有球队表,联赛表,比赛表,然后是积分排行表。
本来想着是个很简单的问题,着手去画图的时候发现是个对于我这样的小白来说很困难的事。
我觉得难以理解的地方有以下几点望大佬们解惑
1,主要困惑在积分榜表,我一开始忽略了年度跟赛季这个概念,后来实际做的时候就困惑了。我一开始想所有队伍做在一个表里,除了必要数据字段外,额外建两个联赛字段与年度字段来区分,后来觉得这样好像有点傻吧,就只把队伍全放一个表,然后一年一个表,过一个赛季就新建一个各分表不知道这样如何实现,或者说这样合不合适。。
2,我有设想由记录的比赛表里面的比赛信息的胜负,去生成积分表的信息(因为只是简单的记录比分结果,所以我感觉可以通过比赛的结果来生成积分榜表)但碰到的问题其实还是如问题1积分表如何持久化保存的问题,还要方便查询
3,如果是分开保存的,比如一年一个积分表,那如何做这些表跟球队与比赛的关系。如果是保存在一起(像在问题1里所述用字段分年度)那就需要一个年度表(赛季表),来跟积分表做一对多的关系(联赛表1,积分表N),这样的话还需要再做一个字段在积分表里,用来标记为当前年度的(感觉想的好复杂了,新联赛开始,还要写个代码把上一联赛的这个字段改成非当前赛季的)
上面胡乱说了很多,望大佬们海涵,求有经验的大佬给点思路。。。 现在想到这个问题就头疼
PS:或者 我看网上还有一种方案,就是把比赛信息强化一下完善信息并加上年份字段,当需要排名信息的时候直接读取该联赛所有比赛信息实时计算,就不用提排榜了。 这样是否对运算能力有要求
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
基本信息,就是一个“比赛”,基本字段: id,主队,客队,结果。就完了啊,其它的东西,要么在上面加外键,比如什么国家,赛季,联赛,要么通过计算可得。
然后,可以有一个现成的积分 Table ,不过事实上它里面的信息是冗余的而已,这个表删了也没事。
年度 一对多赛季
寒季 一对多 比赛 主场队 客场 队
队 多对多赛季 多对多中间表冗余进球,冗余几胜,冗余几平,冗余几负,冗余积分
不冗余也可以强sql 完成
2018年度 甲A 第二轮 国安主场对天津.
国安,2018年度甲A,共赛8场 积十六分五胜三平.