নাম কলামে অক্ষর দিয়ে শুরু হলে সেগুলো আগে, সংখ্যা দিয়ে শুরু হলে পরে দেখাতে RLIKE এবং IF ফাংশন ব্যবহার করতে হয়। সিনট্যাক্স:
SELECT *FROM yourTableName ORDER BY IF(yourColumnName RLIKE '^[a-z]', 1, 2), yourColumnName;
RLIKE '^[a-z]' মানে ছোট হাতের অক্ষর দিয়ে শুরু হলে true (১), নাহলে false (২)।
উদাহরণ
টেবিল AlphabetFirstThenNumberDemo তৈরি এবং নাম ইনসার্ট করি (John, Bob, 1Sam, Carol, 2Larry, David, 3Mike, Robert)।
কোয়েরি:
mysql> select *from AlphabetFirstThenNumberDemo ORDER BY IF(Name RLIKE '^[a-z]', 1, 2), Name;
ফলাফল (অক্ষর দিয়ে শুরু হওয়া নামগুলো আগে, তারপর সংখ্যা দিয়ে শুরু হওয়া):
+----+--------+ | Id | Name | +----+--------+ | 2 | Bob | | 4 | Carol | | 6 | David | | 1 | John | | 8 | Robert | | 3 | 1Sam | | 5 | 2Larry | | 7 | 3Mike | +----+--------+