Not: Bu soruda, "otomatik tamamlama" terimini (veya "yinelemeli arama") kullanıyorum. Google Arama gibi size verir. Ayrıca benim soru web uygulamaları vs yağ istemci uygulamaları için spesifik değildir.Otomatik tamamlama/yinelemeli arama için sonuçlar sağlarken veritabanı performansını nasıl en iyi hale getirirsiniz?
SQL SELECT sorguları, özellikle bu isteğe bağlı büyük veri kümeleri üzerinden, bu tür sorgu için iyi bir performans sağlamak üzere normal olarak nasıl oluşturulur? Aramanın yalnızca ilk n karakterleri (en kolay durum) temelinde sorgulayacağı durumda, hala yeni SELECT sonucunu LIKE ... her tuşa basan bir LASE ... girişine vermekteyim. Çeşitli önbellekleme biçimleriyle bile, bu performansın düşük olmasına neden olabilir.
Arama dizginizin önek eşleşmeleri, alt dizgi eşleşmeleri vb. Sonuçları döndürmesini istediğiniz durumlarda, bu daha da zor bir sorundur. Kişiler listesi arama durumuna bakıldığında, FirstName + LastName, LastName + FirstName veya başka bir alt dize ile eşleşen sonuçları döndürebilirsiniz.
@Marcus - Bu cevap müthiş, teşekkür ederim! – Howiecamp