কম্পিউটার টিউটোরিয়াল

MySQL-এ WHERE IN (...) সহ নির্দিষ্ট ক্রমে ফলাফল সাজানো (FIELD)

MySQL-এ WHERE ... IN (...) কোয়েরির ফলাফল আপনার ইচ্ছামত ক্রমে সাজাতে FIELD() ফাংশন ব্যবহার করুন।

সিনট্যাক্স

SELECT * FROM yourTableName WHERE yourColumnName IN('value1','value2',...) ORDER BY FIELD(yourColumnName, 'value1','value2',...);

উদাহরণ

টেবিল তৈরি করি:

mysql> create table SelectOrderbyField 
    -> ( 
    -> Id int NOT NULL AUTO_INCREMENT, 
    -> Name varchar(30), 
    -> Age int, 
    -> PRIMARY KEY(Id) 
    -> ); Query OK, 0 rows affected (0.62 sec)

রেকর্ড যোগ করি:

mysql> insert into SelectOrderbyField(Name,Age) values('John',23); 
mysql> insert into SelectOrderbyField(Name,Age) values('Carol',25); 
mysql> insert into SelectOrderbyField(Name,Age) values('Bob',21); 
mysql> insert into SelectOrderbyField(Name,Age) values('Mike',28); 
mysql> insert into SelectOrderbyField(Name,Age) values('Sam',26); 
mysql> insert into SelectOrderbyField(Name,Age) values('David',23);

সকল রেকর্ড

mysql> select *from SelectOrderbyField;

আউটপুট

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  1 | John  | 23   |
|  2 | Carol | 25   |
|  3 | Bob   | 21   |
|  4 | Mike  | 28   |
|  5 | Sam   | 26   |
|  6 | David | 23   |
+----+-------+------+
6 rows in set (0.00 sec)

ID কলাম অনুযায়ী কাস্টম ক্রম

mysql> select *from SelectOrderbyField where Id IN(5,1,3,2,6,4) 
    -> order by field(Id,5,1,3,2,6,4);

ফলাফল

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  5 | Sam   | 26   |
|  1 | John  | 23   |
|  3 | Bob   | 21   |
|  2 | Carol | 25   |
|  6 | David | 23   |
|  4 | Mike  | 28   |
+----+-------+------+
6 rows in set (0.00 sec)

Name কলাম অনুযায়ী কাস্টম ক্রম

mysql> select *from SelectOrderbyField where Name IN('Sam','John','Bob','Carol','David','Mike') 
    -> order by field(Name,'Sam','John','Bob','Carol','David','Mike');

ফলাফল

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  5 | Sam   | 26   |
|  1 | John  | 23   |
|  3 | Bob   | 21   |
|  2 | Carol | 25   |
|  6 | David | 23   |
|  4 | Mike  | 28   |
+----+-------+------+
6 rows in set (0.03 sec)
  1. MySQL-এ স্পেস যুক্ত কলাম নাম সিলেক্ট করা (Backtick ব্যবহার)

  2. MySQL-এ নির্দিষ্ট তারিখ অনুযায়ী রেকর্ড সিলেক্ট করুন

  3. Java-এ MySQL ResultSet থেকে কলাম নাম পাওয়া

  4. MySQL-এ নির্দিষ্ট কলাম নামে টেবিল খুঁজে বের করা