MySQL-এ `FIELD()` ফাংশন একটি মান তালিকায় কোন পজিশনে আছে তা রিটার্ন করে। এর সাথে `ORDER BY` ব্যবহার করে কাস্টম সর্টিং করা যায়।
সিনট্যাক্স
SELECT * FROM yourTableName ORDER BY FIELD(yourColumnName, value1, value2, value3, ...) DESC;
উদাহরণ
mysql> CREATE TABLE OrderByDemo (StudentId INT); mysql> INSERT INTO OrderByDemo VALUES (101), (1010), (1001), (401); mysql> SELECT * FROM OrderByDemo ORDER BY FIELD(StudentId, 101, 401, 1001, 1010) DESC; +-----------+ | StudentId | +-----------+ | 1010 | | 1001 | | 401 | | 101 | +-----------+
ব্যাখ্যা: `FIELD(StudentId, 101, 401, 1001, 1010)` হলো ১০১-র পজিশন ১, ৪০১-র ২, ১০০১-র ৩, ১০১০-র ৪। `DESC` দিয়ে উল্টো ক্রমে সর্ট করা হয়েছে। মান তালিকায় না থাকলে ০ রিটার্ন করে (সর্বোপরি আসবে ASC-এ)।