Sorgu çalışma planlarına baktığımızda actual ve estimated rows değerleri genelde aynı gelir. Eğer farklıysa bu istatistiklerin güncellenmesi gerektiğini gösterir.
Bir tabloda genel clustered index kriterlerini sağlayan bir clustered index bulunması “best practice” bir yaklaşımdır.
RID lookup da Key Lookup’da ilave I/O işlemlerine sebep olur. Bunlardan kurtulmaya çalışmak gerekir.
Sort işlemi de sorgu maliyetini artıran bir işlemdir. Bu sıralamaya gerçekten ihtiyaç var mı? Gerçekten ihtiyaç varsa bu kolona göre index var mı bakmak gerekir?
SQL Sorgularının sargable (Search ARGument ABLE) olması için:
– sorguladığımız kolon üzerinde herhangi bir işlem olmamalı. LEFT(SOYAD,2) ya da CONVERT(varchar(12),TARIH) gibi
– LIKE operatörü LIKE N’AL%‘; şeklinde aradığımız pattern başa yazark kullanılmalı. N’%AL’ şeklinde kullanılmamalı
SARGABLE operatörler: = , >, >=, <, <=, IN, BETWEEN
SARGABLE olmayan operatörler: NOT, <>, LIKE ‘%PATTERN’, NOT IN
Sorgu içerisinde implicit conversion olması sorgu performansını son derece kötü etkiler
Select sorgusunda yalnızca gerçekten ihtiyaç duyulan kolonlar eklenmelidir.