Google Aramasındaki "did You Mean" Ne Göre Arama Yapmak

1 2 3 4
21/04/2020, 17:57

accessman

eklediğim örnekte 300 yakın doğum yeri bilgisi var
bunlardan bazıları il bazıları ilçe bazıları kasaba isimleri
aslında daha az olmasına rağmen 
Nazilli, Nazili, Nazılli, Nazillı 
gibi yanlış yazımlar ile liste çorbaya dönmüş
bunu yanlış yazımları doğruları ile değiştirip güncellemem gerekiyor
bazı arkadaşların "GROUP BY" dediğini duyar gibiyim
ama farkettiyseniz kişisel verileri paylaşmamak için diğer alanları sildim
yani "Nazili" değeri Alinin doğum yeri
"Nazilli" velinin doğum yeri vs vs
update Sql cümlesi ile verileri doğrusu ile değiştirmem lazım (veya farklı bir yol ile)
"Nazilli, Nazili, Nazılli, Nazillı " bunların hepsini "NAZİLLİ" haline getireceğim Öyle bir şey yazmalıyım ki 
"MAZİLLİ" 
kelimesini bile 
"NAZİLLİ" kelimesine çevirebileyim
7 harfin 6 sı aynı ama başharfi "M" olduğu için sorun çıkıyor
nasıl bir yol izlemem lazım ki bu çorbayı adam edip servis edebilelim 
21/04/2020, 18:09

berduş

Google kadar bütçe ayırmak gerekebilir)
her türlü olasılığı sürekli kontrol etmek sorun olmaz mı, sistemi yavaşlatmaz mı?
en kestirme yol her harfin arasına * eklemek olabilir ama bence en mantıklısı il/ilç/mahalle mantığına dayalı tablo oluşturmak
ve bu tablodan girmesini sağlamak
21/04/2020, 18:19

accessman

Evet haklısınız en sinir olduğum şeylerden biri verilerin yanlış girilmesi ama ne çare ki veriler girilmiş şimdi önümüze bakacağız
"Mazilli" nin
"Nazilli" akrabası olduğunu bilgisayara nasıl anlatırsınız
21/04/2020, 18:23

berduş

peki doğruları nerde?
21/04/2020, 18:26

accessman

Güzel bir noktaya temas ettiniz.
İçlerinde bazıları doğru ama bunu pc nasıl bilecek değil mi

İki liste olsa içerikleri bu yer isimleri olsa
İlk liste çoklu seçilebilse
İlk listeden seçtiğimiz isimleri
İkinci listeden seçtiğimiz isimle güncellese nasıl olur
Her harfin arasına yıldız koymak güzel fikirmiş
21/04/2020, 21:50

berduş

Kesin bir algoritma bulamadım ama şöyle bir yol izlenebilir
tablodaki kayıtlardan dogruntablosunda bulunmayanlar için şöyle bir döngü oluşturulabilir
1 - ilk harften başlayarak ilk 3te birlik yada boş veri gelsene kadar ilk harften itibaren birer birer artirarak
2 - ortadaki 3te birlik
3 - son 3te birlik parçalara gore (burada da son harften ilk harfe doğru bier birer artirarak) doğrular tablosundan aranması ve en çok benzeyen ilk 3 onerilebilir
1 2 3 4