Bir Mysql Sorusu
-
Merhaba,
Veritabanında isim araması yapıyorum. Fakat şöyle bir sorunum var. Bazı kişiler isimlerini yazarken sesli harf yazmıyor.
Örneğin tolga aramasında E yanıtı dönüyor. Fakat tlg aramasında null veri geliyor. İsteğim tlg diye ararsa da E yanıtı dönsün.
Bu sorguyu bi oturtamadım. Nasıl yazmam gerekiyor acaba?
biri tarafından 25/Haz/18 19:46 tarihinde düzenlenmiştir -
Yukari
-
Like kullanip Sesli harfleri alttan tre ye cevirip aratsan işini görebilir
-
yolbulucu bunu yazdı
Like kullanip Sesli harfleri alttan tre ye cevirip aratsan işini görebilir
Şimdi veritabanında tolga diye kelime var. Gelen kelime tlg olunca sesli harf olmuyor içinde.
Fakat sorguda amacım sesli harfleri silmek. Gelen veride sesli harfleri silerim ama sorguda aradığım kelimede nasıl sesli harfleri silicem.
MySQL replace diye bir kaç kod denedim ama olmadı.
-
tolgasen bunu yazdıyolbulucu bunu yazdı
Like kullanip Sesli harfleri alttan tre ye cevirip aratsan işini görebilir
Şimdi veritabanında tolga diye kelime var. Gelen kelime tlg olunca sesli harf olmuyor içinde.
Fakat sorguda amacım sesli harfleri silmek. Gelen veride sesli harfleri silerim ama sorguda aradığım kelimede nasıl sesli harfleri silicem.
MySQL replace diye bir kaç kod denedim ama olmadı.
https://www.sqlservercentral.com/Forums/Topic1420602-3077-1.aspx
Mysql remove vowels diye aratinca cikti biseyler. Belki isini gorur
-
mysql de yapılır mı bilmiyorumda sorgudan önce bi if yazsan sorgudaki addan sesli harfleri çıkarıpta arasa?
-
update xxx set colSessiz=Replace(Replace(Replace(Replace(Replace(colOrjin,'A',''),'E',''),'I',''),'O',''),'U','');
gibi gibi ?
-
rakkoc bunu yazdı
update xxx set colSessiz=Replace(Replace(Replace(Replace(Replace(colOrjin,'A',''),'E',''),'I',''),'O',''),'U','');
gibi gibi ?
Ek olarak Like ile aramaktansa aradığın column bu şekilde replace et ve column = aranacak şeklinde yap sorgun daha hızlı çalışır like dan ..
-
Hocam similar searching arıyorsun. Çok bilgim yok konu hakkında ama lucene galiba bir diğer keyword.
Birkaç tane de aşağıya link bıraktım, incelersin.
https://stackoverflow.com/questions/3338889/how-to-find-similar-results-and-sort-by-similarity
https://board.phpbuilder.com/d/10340672-mysql-query-to-find-similar-results/3
Edit 1: Bir de sanırım SQL ile deniyorsun. Eğer arada bir programlama dili varsa; daha rahat sonuca ulaşabilirsin. SQL'de işler nasıl dönüyor pek fikrim yok.
Edit 2: REGEX kullanabilirsin sanırım SQL'de. Onunla sesli harfleri çıkarma ihtimalin olabilir.
Edit 3: Doğrudan LIKE ile yapabileceğini sanmıyorum.
Edit 4: Dediğim gibi çok bir fikrim de yok :)
manyaki tarafından 26/Haz/18 01:10 tarihinde düzenlenmiştir -
Hocam şayet verileri çekip LCS ile dolaşırsan verileri sana çok daha iyi bir sonuç üretir. En yakın keywordleri bulmak istiyorsan :)
Maliyet , Zaman ve İsterleri karşılıyorsa LCS yapıştır SQL ile çözemezsin bunu.
-
Çözemedim hiç bir şekilde. Bir çok yöntem denedim ama nafile. Sistemi komple değiştirdim.
Veritabanındaki değerleri güncellemek istemedim, olduğu gibi kalsın istedim. Çünkü bu sefer ad yazan kullanıcılar ben böyle yazmadım adımı diye şikayet ediyor.