查看执行计划疑问?

shentj 2003-08-22 03:46:43
在查看执行计划时,有时提示“聚集索引扫描,后接一个对象:一般是主键”,有时提示“非聚集索引,后接一个对象:一般是一个索引”,但有人说,前一种没有用到索引,不是一个好的查询,而后一种有效利用了索引。
我不明白主键不也是索引吗?
举例如下:
use Northwind
select * from Orders
where CustomerID='alfki' and Freight>30

另一个是
use Northwind
select * from Orders
where CustomerID='alfki' or ShipName='19990801'


CustomerID为索引,Freight和ShipName不是索引

(我知道
在and时只要有一个索引即可,而or必须全是才可,我得意思是通过对执行计划的显示得出那个结论,而不是事先知道)
...全文
56 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
leimin 2003-08-23
  • 打赏
  • 举报
回复
我不明白主键不也是索引吗?
主键不等于索引,在SQLSERVER中主键默认是聚集索引。一个表这可以有一个聚集索引和主键。

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧