迭代表与表大小SQL的时间

时间:2015-10-04 18:53:39

标签: sql loops

我有一个我需要迭代的SQL表。但是,我希望在我的网站启动后这个表会增长。表的大小如何影响SQL迭代它所花费的时间?

1 个答案:

答案 0 :(得分:1)

如果您的查询必须进行表扫描,则增加表的大小将花费更多时间。因此,谨慎使用密钥(主要,唯一,索引),允许您对数据集进行二进制搜索并更快地获取数据。

随着时间的推移,您将不得不调整查询。在大多数数据库中,将有分析查询的功能。这种分析可以显示诸如表扫描之类的瓶颈。一些数据库分析工具也可以推荐索引。

例如:

create table employees1 (id int, fullname varchar(100))
vs.
create table employees2 (id int, fullname varchar(100), 
  primary key(id),
  key idx_employees_fullname(fullname))

随着employees1表中数据的增加,像SELECT * from employees1 where fullname like 'John%'这样的查询将花费越来越长的时间。在employees2上运行的相同查询将使用索引(类似于书后面的内容)快速查找所有John,因为索引知道哪个id约翰与之关联。

明智地创建数据库结构和密钥。定期分析和调整数据库对象和查询。这是一个有很多潜在答案的问题。