car*_*reo 3 index sql-server sql-server-2016
我在 Microsoft SQL Server 2016 上有一个数据库,有一个大约一百万行的表,我们称之为书籍。这个查询需要超过一分钟,这是不可接受的:
select * from books wherepublisher_id in (857413, 857317, 857316)
从publisher_id 到publishers 表有一个合适的FK。我显示了 Estimated Execution Plan,它告诉我 100% 的成本都在 book 表的主键上的“Clustered Index Scan (clustered)”中。让我担心的是,它根本不推荐索引。通过查看查询,很明显索引会有所帮助。事实上,当我创建索引时,查询会立即返回结果。我的数据库中有什么东西损坏了,也许是统计数据?或者您认为我应该也不相信我在估计的执行计划中读到的内容?
归档时间: |
|
查看次数: |
458 次 |
最近记录: |