Arama Sonuçları: 'T-SQL'

Sargable vs Non-Sargable Queries

Sargable sorgular, tabloda tanımlı indeksleri kullanarak arama yapabilen sorgulardır. Non-sargable sorgular ise kesinlikle kaçınılması ve mutlaka sargable alternatifinin bulunarak kullanılması gereken, indeks dostu olmayan, çalışma zamanı oldukça yüksek, kalitesiz sorgulardır.

Non-Sargable Sorgu:

SELECT PER.* 
FROM dbo.Person PER 
WHERE SUBSTRING(PER.Name,1,3)= 'Meh'

Sargable Alternatifi:

SELECT PER.* 
FROM dbo.Person PER 
WHERE PER.Name LIKE 'Meh%'

Yukarıdaki örnekte ilk sorgu için tüm satırlardaki name kolonu öncelikle substring fonksiyonuna gireceği için indeks özelliğini kaybedecektir. İkinci sorguda ise kolon değerleri herhangi bir ön operasyona maruz kalmadan direkt olarak Sargable LIKE operatörü ile sorgulanmıştır.


devamı için tıklayınız...


00:00:00
Saturday 15 Jan 2017
Altın Sözler
“Söylediklerinize dikkat edin, düşüncelere dönüşür. Düşüncelerinize dikkat edin, duygularınıza dönüşür. Duygularınıza dikkat edin, davranışlarınıza dönüşür. Davranışlarınıza dikkat edin, alışkanlıklarınıza dönüşür. Alışkanlıklarınıza dikkat edin, değerlerinize dönüşür. Değerlerinize dikkat edin, karakterinize dönüşür. Karakterinize dikkat edin, kaderinize dönüşür.”
Web hosting by Somee.com