mysql - 向现有表添加新列/索引的影响?

标签 mysql indexing

我希望在数据库中实现一项新功能,该功能需要将记录链接到另一个表。该表已包含大约 76000 条记录,只有新添加的记录才需要链接 ID。我正在考虑两种方法:

  1. 添加一个包含源 ID 和目标 ID 的新表。从数据库的角度来看,这可能(?)是性能最高的,但需要应用程序中更多的逻辑。

  2. 向现有表添加新的索引列。对于现有记录,该列的值将为空;对于新记录,该列的值将包含整数值。

我想了解的是第二种方法对索引大小和性能的影响,特别是当我根据新列中的特定值选择行时。

最佳答案

当你处理数百万条记录时,MySQL 开始有点阻塞,具体取决于服务器速度、RAM 等。但是,76,000 条记录“没什么”。因此,请选择选项 2,添加一个字段(默认为 NULL)并建立索引,并将其用作另一个表的外键。只要已建立索引,使用新列选择特定行就会运行得非常快。

关于mysql - 向现有表添加新列/索引的影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45014659/

相关文章:

mysql - B+树的聚簇索引和非聚簇索引保存在哪里?

python - 根据另一个数据框中的索引和值访问数据框中的值

MySQL 从一个表查询 GROUPing,排除在另一个子查询中找到的结果

PHP MYSQL 选择最近24小时和之前24小时的数据

数据库;同时获取3个表的信息

swift - Realm 中的索引属性

python - 如何从 numpy 二维数组中找到大于特殊数字的元素索引?

mysql - 如何将多列数据合并为一列? 【邻接表模型查询】

php - (HTML/PHP) 下拉菜单选择影响表格和表单

sql - mysql索引太多?