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

MySQL-এ নির্দিষ্ট রো প্রথমে দেখানো (ORDER BY ট্রিক)

MySQL-এ কোনো নির্দিষ্ট রোকে ফলাফলের সবচেয়ে উপরে দেখাতে চাইলে ORDER BY ক্লজে বুলিয়ান এক্সপ্রেশন ব্যবহার করা যায়।

টেবিল তৈরি এবং ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable (Value INT);
mysql> INSERT INTO DemoTable VALUES(20);
mysql> INSERT INTO DemoTable VALUES(8);
mysql> INSERT INTO DemoTable VALUES(18);
mysql> INSERT INTO DemoTable VALUES(11);
mysql> INSERT INTO DemoTable VALUES(9);
mysql> INSERT INTO DemoTable VALUES(19);
mysql> INSERT INTO DemoTable VALUES(6);
mysql> INSERT INTO DemoTable VALUES(7);

সাধারণ আউটপুট (ইনসার্ট অর্ডার)

mysql> SELECT * FROM DemoTable;
+-------+
| Value |
+-------+
|    20 |
|     8 |
|    18 |
|    11 |
|     9 |
|    19 |
|     6 |
|     7 |
+-------+

Value=9 রোকে প্রথমে দেখানো

mysql> SELECT * FROM DemoTable 
    -> ORDER BY (Value = 9) DESC, Value DESC;

ফলাফল

+-------+
| Value |
+-------+
|     9 |
|    20 |
|    19 |
|    18 |
|    11 |
|     8 |
|     7 |
|     6 |
+-------+

ব্যাখ্যা:

  • (Value = 9) একটি বুলিয়ান এক্সপ্রেশন যা Value=9 হলে ১ (TRUE), অন্যথায় ০ (FALSE) রিটার্ন করে
  • DESC দিয়ে ১ (TRUE) কে ০ (FALSE) এর উপরে আনা হয়েছে
  • দ্বিতীয় সর্ট: Value DESC বাকি রোগুলো বড় থেকে ছোট ক্রমে

ব্যবহার: ফিচার্ড আইটেম, পিন করা পোস্ট, বা ডিফল্ট সিলেকশন وأول দেখাতে এই টেকনিক ব্যবহারী।

  1. MySQL এরর #1046 - কোনো ডাটাবেস নির্বাচন করা হয়নি

  2. MySQL-এ ZEROFILL (ZF) ব্যবহার করে সংখ্যা বাম পাশে শূন্য প্যাডিং

  3. MySQL-এ COALESCE() ফাংশন দিয়ে প্রথম নন-নাল মান দেখানো

  4. MySQL-এ LIMIT রেঞ্জ ব্যবহার করে প্রথম ৩ রো দেখানো