mysql - 是将表分解并创建具有 3 列 + 外部 ID 的新表,还是只使其成为 n+3 列并且不使用连接更好?

标签 mysql database database-design

我正在为一个项目设计一个数据库。我有一个有 10 列的表,其中大部分是在访问该表时使用的,我需要再添加 3 列;

View Count
Thumbs Up (count)
Thumbs Down (Count)

访问表时将在 %90 的查询中使用。所以,我的问题是,是将表分解并创建包含这 3 列 + 外部 ID 的新表更好,还是仅将其设为 13 列且不使用连接?

由于这些列将被频繁使用,我想再添加 3 个列会更好,但是如果我需要再创建 10 个将在 %90 的时间内使用的列,我应该也添加它们,还是创建一个新的表并使用联接?

如果列使用非常频繁,我不确定何时打破表格。你有什么建议吗?

最佳答案

因为它的用例数量如此之多 (90%) 并且字段只是数字(不是文本),所以我当然倾向于将字段添加到现有表中。

编辑:只有在信息量很大和/或不经常访问时才将表格分开。没有固定的规则,如果您不确定好处,您可能只需要运行测试。

关于mysql - 是将表分解并创建具有 3 列 + 外部 ID 的新表,还是只使其成为 n+3 列并且不使用连接更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2593566/

相关文章:

mysql - 与时间属性有关的设计数据库

mysql - 数据仓库任意字段

php - 如何在 Laravel 4.2 中计算 group by 结果的数量而不检索整组数据?

php - 如何获取mysql中某一个月所有产品的总和

database - 嵌套 FutureBuilder 与嵌套调用以从数据库延迟加载

php - 一般错误 1215 : cannot add foreign key constraint

php - 如果 PHP 脚本执行时间超过 53 秒,如何跳出循环

c++ - Mysql 连接器 connect() 问题

PHPUnit数据库测试

mysql - Sql DB Driven Web Application架构问题