SUBSTRING() ফাংশন ORDER BY-এ ব্যবহার করুন
স্ট্রিং-এর নির্দিষ্ট পজিশন থেকে শুরু করে সর্ট করতে ORDER BY SUBSTRING(column, start_position) ব্যবহার করুন।
উদাহরণ: টেবিল ও ডেটা
mysql> CREATE TABLE DemoTable (UserId VARCHAR(200));
mysql> INSERT INTO DemoTable VALUES('USER_1234');
mysql> INSERT INTO DemoTable VALUES('USER_John');
mysql> INSERT INTO DemoTable VALUES('USER_Sam');
mysql> INSERT INTO DemoTable VALUES('USER_Carol');
mysql> INSERT INTO DemoTable VALUES('USER_Bob');
সকল রেকর্ড:
+------------+ | UserId | +------------+ | USER_1234 | | USER_John | | USER_Sam | | USER_Carol | | USER_Bob | +------------+
কেস ১: ৪র্থ ক্যারেক্টার থেকে ASC সর্ট
mysql> SELECT * FROM DemoTable ORDER BY SUBSTRING(UserId, 4) ASC;
ফলাফল:
+------------+ | UserId | +------------+ | USER_1234 | | USER_Bob | | USER_Carol | | USER_John | | USER_Sam | +------------+
কেস ২: ৪র্থ ক্যারেক্টার থেকে DESC সর্ট
mysql> SELECT * FROM DemoTable ORDER BY SUBSTRING(UserId, 4) DESC;
ফলাফল:
+------------+ | UserId | +------------+ | USER_Sam | | USER_John | | USER_Carol | | USER_Bob | | USER_1234 | +------------+
নোট: SUBSTRING(str, pos) পজিশন ১-ভিত্তিক। এখানে 'USER_' ৫ ক্যারেক্টার, তাই ৪ দিয়ে শুরু করলে '_' থেকে সর্ট হয়। চাইলে SUBSTRING(UserId, 6) দিয়ে প্রিফিক্স বাদ দিয়ে সর্ট করা যায়।