Ne kadar önemli dizinler sütun sırası mı?
Endeks bildirimi başında en seçici olacak sütunlar koymak gerektiğini duydum. Örnek:
CREATE NONCLUSTERED INDEX MyINDX on Table1
(
MostSelective,
SecondMost,
Least
)
Öncelikle, doğru söylüyorum nedir? Eğer öyleyse, benim dizin sütun sırasını yeniden düzenleyerek performans açısından büyük farklar olabilir miyim ya da bir "" pratik mi yapmak daha iyi olur
Neden soruyorum çünkü sonra koyarak bir sorgu ile DTA tavsiye etti ben oluşturmak bir dizin hemen hemen hepsi aynı sütunlara olarak varolan bir dizin, sadece farklı bir düzen. Sadece varolan bir dizini eksik sütun ekleme ve iyi demeyi düşünüyordum. Düşünceler?
CEVAP
Böyle bir dizin bak
Cols
1 2 3
-------------
| | 1 | |
| A |---| |
| | 2 | |
|---|---| |
| | | |
| | 1 | 9 |
| B | | |
| |---| |
| | 2 | |
| |---| |
| | 3 | |
|---|---| |
İlk sütun olarak ilk kısıtlama, ikinci sütun ilk kısıtlayan daha fazla sonuç ortadan kaldırır. Bu daha kolay eğer resim endeks nasıl olmalı geçilen arasında, sütun 1, sütun 2, vb...gördüğünüz lopping kapalı çoğu sonuçlarında yumruk pas yapar 2. adım bu çok daha hızlı.
Eğer sonuç kümelerini daraltarak sütun doktoru bile yararlı değil çünkü dizin kullanmak istemez 3, sorgulanan bir olay.Her zaman bir sorgu, sonuç sayısını bir sonraki adımı daha iyi performans anlamına gelir daha önce başa daraltarak.
Endeksi de bu şekilde depolandığından, Endeksin üzerinde sorgulama yaparken ilk sütunu bulabilmek yararlar var.
Kısacası: Hayır, sadece gösteriş için değil, gerçek performans avantajları vardır.
Ne kadar değişken bir sütun sayısı içi...
Multi-Sütun birden çok Dizin vs Dizinl...
Ne kadar BOŞ bir sütun üzerinde benzer...
SERİ işlevlerin sırası önemli mi?...
Bir veritabanı posta kodları depolamak...