Petunjuk indeks hanya tersedia untuk server database Microsoft Dynamics. Untuk SQL Server tradisional, filter yang Anda tentukan di klausa 'Di mana' harus membujuk mesin untuk menggunakan indeks yang relevan ... Asalkan rencana eksekusi mesin dapat secara efisien mengidentifikasi cara membaca informasi (apakah pemindaian tabel lengkap atau pemindaian terindeks) ) - harus membandingkan keduanya sebelum menjalankan pernyataan yang tepat, sebagai bagian dari pengoptimal kinerja bawaan.
Namun, Anda dapat memaksa pengoptimal untuk memindai dengan menggunakan sesuatu seperti
Select *
From [yourtable] With (Index(0))
Where ...
Atau untuk mencari indeks tertentu dengan menggunakan sesuatu seperti
Select *
From [yourtable] With (Index(1))
Where ...
Pilihan ada padamu. Lihat properti indeks tabel di panel objek untuk mengetahui indeks mana yang ingin Anda gunakan. Itu harus cocok dengan filter Anda.
Untuk hasil terbaik, buat daftar filter yang akan mengembalikan hasil paling sedikit terlebih dahulu. Saya tidak tahu apakah saya benar dalam mengatakannya, tetapi sepertinya filter kueri tersebut berurutan; jika Anda mendapatkan urutan yang benar, pengoptimal tidak harus melakukannya untuk Anda dengan membandingkan semua kombinasi, atau setidaknya tidak memulai perbandingan dengan kueri yang lebih mahal.