如果表有500万行,那么MySQL使用ID搜索行需要多长时间?

时间:2016-01-21 22:04:56

标签: performance

行数是否会影响MySQL执行查询,例如:

SELECT * FROM table WHERE c_id = 2

c_id是主要的唯一密钥&每个记录自动递增。

感谢。

2 个答案:

答案 0 :(得分:3)

简短回答是否定的,假设c_id上有索引。

更长的答案:

如果有足够的可用内存,索引将被加载到内存中,这将使查找基本上立即(以毫秒为单位)。

但是,记录查找与实际数据的获取不同。 MySQL首先查找数据,然后获取数据。

获取步骤速度取决于:

  1. 记录数
  2. 列数
  3. 列类型
  4. 硬盘速度
  5. 可用于存储最近查询的内存量
  6. 最近是否查询过数据
  7. 希望有所帮助!

答案 1 :(得分:0)

它会对性能产生一些微不足道的影响,并且一如既往地取决于您可用的硬件和资源,但如果您只是将主键作为MySQL(和大多数数据库引擎)索引查询它应该不是问题它默认情况下。