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

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

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

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

mysql> CREATE TABLE DemoTable (
    -> Number INT
    -> );
Query OK, 0 rows affected (0.57 sec)
mysql> INSERT INTO DemoTable VALUES(10), (20), (12), (14), (19), (45), (56), (103), (87), (98);

সব রেকর্ড দেখানো

mysql> SELECT * FROM DemoTable;

আউটপুট

+--------+
| Number |
+--------+
| 10     |
| 20     |
| 12     |
| 14     |
| 19     |
| 45     |
| 56     |
| 103    |
| 87     |
| 98     |
+--------+
10 rows in set (0.00 sec)

৪৫ কে প্রথমে, বাকি আরোহী ক্রমে

mysql> SELECT * FROM DemoTable ORDER BY (Number = 45) DESC, Number;

আউটপুট

+--------+
| Number |
+--------+
| 45     |
| 10     |
| 12     |
| 14     |
| 19     |
| 20     |
| 56     |
| 87     |
| 98     |
| 103    |
+--------+
10 rows in set (0.00 sec)

ব্যাখ্যা: (Number = 45) বুলিয়ান এক্সপ্রেশন — ৪৫ হলে TRUE (1), অন্যথায় FALSE (0)। DESC দিয়ে ১ (TRUE) কে আগে আনা হয়েছে। তারপর Number দিয়ে আরোহী ক্রমে সাজানো হয়েছে।

একাধিক মানকে প্রথমে আনা: ORDER BY FIELD(Number, 45, 10, 20) DESC, Number — FIELD() ফাংশন মানটি লিস্টে কততম পজিশনে আছে তা রিটার্ন করে (নাইলে ০)। DESC দিয়ে আনা যাবে।

  1. MySQL-এ নির্দিষ্ট ক্রমে (SET ORDER) সিলেক্ট করার পদ্ধতি

  2. MySQL-এ ORDER BY CASE WHEN ব্যবহার করে কাস্টম সর্টিং করা

  3. MySQL-এ GREATEST() ফাংশন ব্যবহার করে একাধিক কলামে NULL আছে কিনা যাচাই করা

  4. MySQL-এ প্রথম ৩ রোয়ের কলাম মান নির্দিষ্ট মান দিয়ে আপডেট করা