Lampirkan Petunjuk Kueri ke Panduan Paket
Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance
Kombinasi petunjuk kueri yang valid dapat digunakan dalam panduan paket. Saat panduan paket cocok dengan kueri, klausa OPTION yang ditentukan dalam klausa petunjuk panduan paket ditambahkan ke kueri sebelum dikompilasi dan dioptimalkan. Jika kueri yang cocok dengan panduan paket sudah memiliki klausa OPTION, petunjuk kueri yang ditentukan dalam panduan paket menggantikan kueri dalam kueri. Namun, agar panduan paket cocok dengan kueri yang sudah memiliki klausul OPTION, Anda harus menyertakan klausa OPTION kueri saat Anda menentukan teks kueri yang cocok dalam pernyataan sp_create_plan_guide. Jika Anda ingin petunjuk yang ditentukan dalam panduan paket ditambahkan ke petunjuk yang sudah ada pada kueri, alih-alih menggantinya, Anda harus menentukan petunjuk asli dan petunjuk tambahan dalam klausul OPTION dari panduan paket.
Perhatian
Panduan rencana yang menyalahgunakan petunjuk kueri dapat menyebabkan masalah kompilasi, eksekusi, atau performa. Panduan paket hanya boleh digunakan oleh pengembang dan administrator database yang berpengalaman.
Petunjuk Kueri Umum yang Digunakan dalam Panduan Paket
Kueri yang dapat memperoleh manfaat dari panduan paket umumnya berbasis parameter, dan mungkin berkinerja buruk karena menggunakan rencana kueri cache yang nilai parameternya tidak mewakili skenario terburuk atau sebagian besar representatif. Petunjuk kueri OPTIMIZE FOR dan RECOMPILE dapat digunakan untuk mengatasi masalah ini. OPTIMIZE FOR menginstruksikan SQL Server untuk menggunakan nilai tertentu untuk parameter saat kueri dioptimalkan. RECOMPILE menginstruksikan server untuk membuang rencana kueri setelah eksekusi, memaksa pengoptimal kueri untuk menyusun ulang rencana kueri baru lain kali kueri yang sama dijalankan. Misalnya, lihat Panduan Paket.
Selain itu, Anda dapat menentukan petunjuk tabel INDEX, FORCESCAN, dan FORCESEEK sebagai petunjuk kueri. Saat ditentukan sebagai petunjuk kueri, petunjuk ini berulah seperti tabel sebaris atau petunjuk tampilan. Petunjuk INDEX memaksa pengoptimal kueri untuk hanya menggunakan indeks yang ditentukan untuk mengakses data dalam tabel atau tampilan yang dirujuk. Petunjuk FORCESEEK memaksa pengoptimal untuk hanya menggunakan operasi pencarian indeks untuk mengakses data dalam tabel atau tampilan yang dirujuk. Petunjuk ini menyediakan fungsionalitas panduan paket tambahan dan memungkinkan Anda memiliki pengaruh lebih besar atas pengoptimalan kueri yang menggunakan panduan paket.