gpt4 book ai didi

sql - 查询速度是否取决于表中的行数?

转载 作者:太空狗 更新时间:2023-10-30 01:53:25 25 4
gpt4 key购买 nike

假设我有这个查询:

select * from table1 r where r.x = 5

此查询的速度是否取决于 table1 中存在的行数?

最佳答案

影响查询速度的因素有很多,其中之一就是行数。

其他包括:

  • 索引策略(如果你索引列“x”,你会看到比没有索引更好的性能)
  • 服务器负载
  • 数据缓存 - 执行查询后,数据将添加到数据缓存中。因此,由于数据来自内存而不是磁盘,因此后续重新运行会快得多。直到数据从缓存中删除为止
  • 执行计划缓存 - 程度较低。第一次执行查询后,SQL Server 得出的执行计划会缓存一段时间,以供以后执行重用。
  • 服务器硬件
  • 您编写查询的方式(通常是导致性能不佳的最大因素之一!)。例如使用游标而不是基于集合的操作来写东西

对于表中有大量行的数据库,通常需要考虑分区(从 SQL Server 2005 开始,企业版有内置支持)。这是将数据拆分成更小的单元。通常,较小的单元 = 较小的表 = 较小的索引 = 更好的性能。

关于sql - 查询速度是否取决于表中的行数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2537473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com