MYSQL Türkçe Karakter Arama Bulma ve Otomatik Değiştirme – Replace
Selam beyler,
Belki basit gelecek bazılarınıza ama ben yabancı sitelerde aradım buldum bu cevapları ve sizle paylaşmak istedim.
MYSQL‘de sadece Türkçe karakterleri aramak istediğinizde standart like sorguları ile ararsanız bulamıyorsunuz. Daha doğrusu buluyorsunuz ama İngilizceleri de çıkıyor bunun çözümü için REGEXP kullanıcaz.
MYSQL Türkçe Karakter Arama – Bulma
Örnek SQL sorgusu,
SELECT * FROM `benim_tablom` WHERE `baslik` REGEXP 'ü' or `baslik` REGEXP 'ğ' or `baslik` REGEXP 'ç' or `baslik` REGEXP 'ş' or `baslik` REGEXP 'ı' or `baslik` REGEXP 'ö'
Böyle aradığımızda baslik alanında sadece Türkçe karakterlerin olduğu sonuçlar gelecek. Yani u,g,c,s,i,o sonuçlarından ziyade ü,ğ,ç,ş,ı,ö yer alan sonuçlar gelecek.
Böyle bulduk. Bir de keşke bunları otomatik replace edebilseydik yani değiştirebilseydik di mi.
MYSQL Özel Karakterleri Replace Etmek – Otomatik Değiştirmek
Bu da var hem de çok kolay..
Bildiginiz update komutunu kullanıcaz çünkü birşeyi güncelliyoruz sonuçta ama sadece bu yeterli değil. Bir de replace komutundan faylanıcaz.
update benim_tablom set baslik = replace(link_rewrite, 'ü', 'u')
Bu şekilde demiş olduk ki ü gördüğün tüm karakterleri u olarak güncelle.
Umarım işinize yarar. Bu kadardı yazım, hadi Allah işinizi rast getirsin.
Cevap bırakın