Mysql’ de Türkçe Sıralama (Türkçe Order By)

MySQL veritabanında sorgularımızda ORDER BY ile sıralama yaptığımızda Türkçe karakter içeren kelimelerde sıralama problemi yaşanabiliyor.

SELECT * FROM uyeler ORDER BY isim

şeklinde kullandığımızda ümit isimli bir üyemiz umut isimli bir üyemizden daha önce çıkabiliyor. Bunun çözümü MySQL’ e sorgularımızı utf8_turkish_ci karakter setini dikkate alacak şekilde sorgulatmamız gerekiyor. Bunun için collate komutu kullanıyoruz.

SELECT * FROM uyeler ORDER BY isim COLLATE utf8_turkish_ci

Eğer ASC yada DESC gibi sıralama türünü belirtmek istiyorsak bunu sorgumuzun en sonuna yazmamız gerekiyor.