3
我很難弄清楚爲什麼特定的執行計劃是在一種情況下強制執行的,而不是在另一種情況下。例如:SQL Server - 與group by的集合比沒有集合的集合更快
select min(COLUMN) from TABLE where FK_COLUMN = 1;
與
select min(COLUMN) from TABLE where FK_COLUMN = 1 group by FK_COLUMN;
第一產生的執行計劃與索引掃描,而在第二掃描被替換爲尋求。進一步增加我的困惑是事實上,這不會發生在桌子上的每一列 - 對於一些列,我不需要爲了搜索而製作組。我還注意到,緩慢條件只對某些外鍵值發生 - 那些只返回沒有行,但不是所有返回沒有行的值都會產生不利的計劃。是什麼賦予了?
什麼索引在你的表上? –
主鍵上的單個聚集索引。 – GhostOfPerdition
更詳細請(列 - 索引)。什麼數量的指標 –