【问题标题】:Which Select statement is faster 1)cluster 2)nonClustered 3)with no indexes哪个 Select 语句更快 1)集群 2)非集群 3)没有索引
【发布时间】:2016-10-15 06:41:01
【问题描述】:

在 sybase 12.5 中 有 3 个具有各自索引的表

  • employee_1 表在 id 列上具有聚集索引
  • employee_2 表在 id 列上具有非聚集索引
  • employee_3 表,id 列上没有索引

哪个选择会更快,为什么?

select * from employee_1 
select * from employee_2 
select * from employee_3

我认为第三次选择应该更快,因为它不使用任何键并且编译器扫描整个页面来检索比使用索引页面,请告诉我。谢谢

【问题讨论】:

  • 我认为他们都会在每个表中执行相同的给定相同数据。原因:不能使用索引,因此所有 3 个都将使用全表扫描,因为对数据没有限制。
  • 我认为索引在这里无关紧要。
  • 如果我更改选择以获取所有三个中的 max(id) 会怎样
  • 请:每个帖子问 1 个问题。使用 cmets 请求澄清,而不是提出新问题。请不要要求我们为您做作业。请参阅 How to Ask、其他 help center 链接、点击谷歌搜索“stackexchange 作业”和投票箭头鼠标悬停文本。

标签: sql sybase sqlperformance


【解决方案1】:

虽然您没有限制基于 id 的查询,但没有区别。 但是如果你想查找 ids 并且你有大量的记录,那么聚集索引会有所帮助

【讨论】:

    猜你喜欢
    • 2014-08-19
    • 2015-03-14
    • 1970-01-01
    • 2020-08-08
    • 2011-09-12
    • 1970-01-01
    • 2014-06-03
    • 2016-09-22
    • 2011-01-23
    相关资源
    最近更新 更多