Jika indeks Anda tidak digunakan, biasanya ini menunjukkan salah satu dari dua masalah:
-
Kondisi predikat non-sargable, seperti
WHERE DATEPART(YY, Column) = <something>
. Membungkus kolom dalam suatu fungsi akan merusak atau menghilangkan kemampuan pengoptimal untuk menggunakan indeks secara efektif. -
Kolom yang tidak tercakup dalam daftar keluaran, yang sangat mungkin jika Anda terbiasa menulis
SELECT *
alih-alihSELECT specific_columns
. Jika indeks tidak mencakup kueri Anda, maka SQL Server perlu melakukan pencarian RID/kunci untuk setiap baris, satu per satu, yang dapat memperlambat kueri sehingga pengoptimal hanya memutuskan untuk melakukan pemindaian tabel.
Lihat apakah salah satu dari ini mungkin berlaku untuk situasi Anda; jika Anda masih bingung, saya sarankan memperbarui pertanyaan dengan informasi lebih lanjut tentang skema Anda, data, dan kueri yang lambat. 500 MB sangat kecil untuk database SQL, jadi ini tidak boleh lambat. Juga posting apa yang ada dalam rencana eksekusi.