=======关于索引在应用中的想明确的几个问题,UP给分==========
imdt 2003-10-19 01:25:45 如下表:
create tabel tab1
( col1 int,
col2 int,
...
col2 ...
)
create tabel tab2
( col1 int,
col2 int,
...
col2 ...
)
我在表tab1的col1列建立了索引
1、索引再连接中对查询的影响,具体来讲就是建立索引字段在连接时的先后顺序;
select a.col1,b.col2
from tab1 a,tab2 b
where a.col1=b.col1
and a.col1=@num;
和
select a.col1,b.col2
from tab1 a,tab2 b
where b.col1=a.col1
and a.col1=@param;
三个问题:
. 这两个查询会有什么不同?
. 两个表是先做连接在过滤数据还是,先过滤数据后建立连接?
. 如果是先连接后过滤数据,该怎么写才可以先过滤数据够建立连接?
2、条件过滤的先后顺序,
select *
from tab1
where col1=@param1
and col2=@patam2
……
and coln=@patamn
请问先执行那个过滤条件?
3、据说表的结构变化时,索引会失效,请问是否属实,该如何重建索引?
4、我怎么能够判定一个索引再查询中被引用?
5、如何在查询中指定使用某个索引!