0

我有一个会员网站,每个用户每天都可以对足球比赛进行多次投注。这个想法是总结每一天的点,计算它们并将它们显示在图表中(使用谷歌图表API)。到目前为止一切都很好。每天都会为每个用户计算新积分,并与过去几天的积分一起显示在图表上。这样用户就可以在曲线或图形中看到他过去的结果。我唯一的猜测是制作一个带有 ID - 用户名 - 点数 - 回合的表格。我不希望我的数据库因我的表和查询构造不佳而受到影响。

所以我的问题是:我应该如何在我的数据库中进行设置?

这是我现在的桌子:


表 -> 成员
ID
名 姓
用户

密码

(我的虚构表)。

TABLE -> MEMBERS_POINTS
ID
用户名
积分
回合


所以我设置了一个查询,从所需的回合中获取用户积分。这是好方法吗?这会减慢我的数据库速度吗?每个用户将玩 30 轮游戏,如果有几个用户,该表可能包含数千行。

在这里找到一个帖子,但我没有任何答案,我有一些不同的想法。

编辑

这是一个会员网站,每个注册用户都必须一次下所有 60 个赌注,60 个赌注在 30 天内分配(我称之为回合)。每轮包括 2 个投注,最多 6 分。总分将与领导者一起显示,并与每天的获胜者一起显示。每个用户都应该能够以图表的形式查看他或她过去的分数。

1 位用户 = 60 次投注 = 30 天(回合。总积分和每天的积分保持在记录中。

4

1 回答 1

2

这里发生了几件事。

首先,您似乎关心性能。从性能的角度来看,您提到的设计应该没问题(尽管见下文) - 数据库非常擅长处理大量数据。在 MySQL 上,这样的设计可以增长到数百万条记录,而不会出现任何真正的性能问题。

其次,虽然存在设计问题。您确实应该阅读数据库设计-在一个问题中回答太大-但是您的 member_points 表应链接到 member.id 列(假设这是主键),而不是用户名-如果用户更改了用户名,您必须更新他们所有的 member_points 记录。

于 2013-02-22T23:13:36.083 回答