ID-দের কাস্টম অর্ডার বজায় রাখার জন্য ORDER BY CASE স্টেটমেন্ট ব্যবহার করুন। প্রথমে একটি টেবিল তৈরি করা যাক:
mysql> create table DemoTable1550 ( Id int, Name varchar(20) ); Query OK, 0 rows affected (0.61 sec)
ইনসার্ট কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড যোগ করুন:
mysql> insert into DemoTable1550 values(101,'Chris'); Query OK, 1 row affected (0.10 sec) mysql> insert into DemoTable1550 values(110,'Bob'); Query OK, 1 row affected (0.29 sec) mysql> insert into DemoTable1550 values(105,'Carol'); Query OK, 1 row affected (0.12 sec) mysql> insert into DemoTable1550 values(109,'Mike'); Query OK, 1 row affected (0.17 sec)
সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সকল রেকর্ড প্রদর্শন করুন:
mysql> select * from DemoTable1550;
এটি নিম্নলিখিত আউটপুট দেবে:
+------+-------+ | Id | Name | +------+-------+ | 101 | Chris | | 110 | Bob | | 105 | Carol | | 109 | Mike | +------+-------+ 4 rows in set (0.00 sec)
পাস করা ID-দের অর্ডার বজায় রাখার কোয়েরি:
mysql> select * from DemoTable1550 where Id IN(109,101,110) order by case Id when 109 then 1001 when 101 then 1002 when 110 then 1003 end;
এটি নিম্নলিখিত আউটপুট দেবে:
+------+-------+ | Id | Name | +------+-------+ | 109 | Mike | | 101 | Chris | | 110 | Bob | +------+-------+ 3 rows in set (0.00 sec)