0

如果我有一张桌子player_res

+-----------+-------+
| player_id | score |
+-----------+-------+
|     1     |   30  |
|     2     |   30  |
|     3     |   22  |
|     4     |   22  |
+-----------+-------+

可以说,作为唯一score的外键引用会更好吗?所以某个分数在场上只能出现一次。num.valuenum.valuenum.value

player_res.score由于两种类型(和num.value)都是 INT(11) ,数据库大小和/或速度是否有优势?我相信这没关系,但其他人只是试图说服我使用第二个表来唯一地存储分数会更好地提高性能,以防表变得非常大,这就是我决定在这里问的原因!

问候

4

1 回答 1

1

INT(11)INT与MySQL 中的 4 字节大小相同。对于整数类型,括号中的值只是显示的位数。不是字体大小。

http://dev.mysql.com/doc/refman/5.0/en/integer-types.html

使用辅助表对分值进行重复数据删除似乎不是一个非常严肃的想法......或者你和我真的错过了一些微妙之处?


如果大小确实是一个问题,您可能会使用较小的整数(如 tinyint)来存储您的分数?

于 2013-08-09T20:09:57.033 回答