在学习70-433考试的同时,我注意到你可以用以下两种方式之一创建覆盖索引.
CREATE INDEX idx1 ON MyTable (Col1, Col2, Col3)
Run Code Online (Sandbox Code Playgroud)
- 要么 -
CREATE INDEX idx1 ON MyTable (Col1) INCLUDE (Col2, Col3)
Run Code Online (Sandbox Code Playgroud)
INCLUDE条款对我来说是新的.为什么要使用它以及在确定是否使用INCLUDE子句创建覆盖索引时,您会建议使用什么准则?
我正在尝试优化查找历史数据的查询.我正在使用查询分析器来查找执行计划,并发现我的大部分查询成本都在称为"书签查找".我以前从未在执行计划中看过这个节点,也不知道它的含义.
这在查询中是好事还是坏事?
我正在创建基准表来测量我们的Netezza盒子上的每小时负载(查询延迟,查询持续时间).我对表中想要的行数有了一个很好的了解,我正在尝试确定列的数量.没有索引; 我将运行全表扫描.
我正在尝试确定基准表中需要多少列,并且有以下问题:列数(及其类型)将如何影响计数(*)查询的性能.我最初的想法是,具有更多列的表将分布在更多磁盘块上.因此,系统将不得不进行更多磁盘搜索,从而导致更长的查询.
当我在Netezza工作时,我也欢迎与其他系统相关的答案(MySql,Postgres,Vertica等)以帮助我理解.
关于列数对查询性能的影响,已经有几个讨论(Q1,Q2,Q3).这些问题讨论的是通用查询,而不是没有索引的全表扫描.因此,单独的问题.