- “SELECT * FROM …” гэж бүх баганыг мэдээллийн сангаас унших биш өөрт шаардлагатай цөөн хэдэн багануудаа л нэг бүрчлэн нэрээр нь зааж мэдээллийн сангаас уншвал илүү хурдан ажиллана.
- WHERE дээр аль болох sargable биш операторуудын оронд sargable оператор ашиглавал илүү хурдан
- WHERE дээр ашиглагдаж байгаа баганууд бүгд индексгүй тохиолдолд OR операторыг аль болох ашиглахаас татгалзах
- Боломжтой бол UNION –ны оронд UNION ALL –ыг ашиглавал илүү хурдан
- Нэг хүснэгтээс гаргасан хоёр тусдаа бичлэгүүдийг UNION хийж нэгтгэхгүй байх. Харин түүний оронд WHERE дээр OR ашиглан нэгтгэсэн бичлэгийг шууд гаргаж авсан нь илүү хурдан.
- Хүснэгтэнд тодорхой нэг нөхцөлийг хангах бичлэг байгаа эсэхийг шалгахдаа COUNT(*) бус EXISTS –ийг ашиглавал илүү хурдан ажиллана.
- Бүх бичлэгүүдийг биш зөвхөн хэрэгтэй бичлэгүүдийг WHERE дээр шүүлтүүр хийж авч байх
- Хүснэгтээс NULL өгөгдөлтэй бичлэгүүдийг шалгахдаа NOT IN –ийн оронд EXISTS, NOT EXISTS, IN эсвэл LEFT JOIN гэсэн операторуудыг ашиглавал илүү үр дүнтэй
- Хэрэв EXISTS –ийг ашиглах боломжтой бол аль болох IN операторыг ашиглахаас татгалзах
- Хэрэв BETWEEN –ийг ашиглах боломжтой бол аль болох IN операторыг ашиглахаас татгалзах
- IN операторыг ашиглан шүүлт хийхдээ байнга ашиглагддаг буюу хамгийн түрүүнд олдох өгөгдлөөс нь эхэлж эрэмбэлэн ашиглавал илүү хурдан ажиллана
- Боломжтой бол WHERE дээр бичлэгүүдийг шүүлт хийхдээ SUBSTRING –ийн оронд LIKE –ийг ашиглах нь илүү хурдан
- Үнэхээр шаардлагатай л биш бол ORDER BY –ыг ашиглахаас татгалзах
- Query –нд бичлэгүүдийг эрэмбэлэхдээ аль болох шаардлагагүй багануудаар эрэмбэлэхгүй байх
- Аль болох цөөн тооны мөртэй бичлэгүүдийг эрэмблэх
- Байнга эрэмбэлэлт хийдэг багануудын хувьд класстер индекс (clustered index) үүсгэж ашиглах нь илүү хурдан
- Хэрэв GROUP BY –ыг aggregate function (SUM, COUNT,…) оролцуулалгүйгээр ашиглан, бичлэгүүдийг давхардуулахгүй авахыг хүсэж байгаа бол DISTINCT ашигласан нь илүү хурдан
Дээрх зөвлөмжүүд нь SQL Server -ээс гадна MSAccess, Oracle, MySQL гэх мэт бусад мэдээллийн баазын хувьд хэрэгжүүлэхэд мөн ялгаагүй Query -г хурдасгах боломжтой.
Танд амжилт хүсье!