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

MySQL-এ ORDER BY এক্সপ্রেশন ব্যবহার করে ভ্যালু ১০-এর চেয়ে বড় গুলো ASC, ছোট গুলো DESC সর্ট করুন

MySQL-এ একটি কোয়েরিতে শর্তসাপেক্ষ সর্টিং (একই কোয়েরিতে ASC এবং DESC) বাস্তবায়ন করতে বুলিয়ান এক্সপ্রেশন ORDER BY ক্লজে ব্যবহার করা হয়। Value > 10 এক্সপ্রেশন TRUE (1) হলে DESC-এ আগে আসে, FALSE (0) হলে পরে।

উদাহরণ

১. টেবিল তৈরি করুন

mysql> CREATE TABLE DemoTable (Value INT);

২. ডেটা ইনসার্ট করুন

mysql> INSERT INTO DemoTable VALUES(20), (40), (30), (10), (90), (70), (80), (9), (8);

৩. সব রেকর্ড দেখুন

mysql> SELECT * FROM DemoTable;

আউটপুট: 20, 40, 30, 10, 90, 70, 80, 9, 8

৪. ১০-এর চেয়ে বড় মান ASC, ১০ বা ছোট মান DESC (র‍্যাপ-অরাউন্ড)

mysql> SELECT * FROM DemoTable ORDER BY Value > 10 DESC, Value ASC;

৫. ফলাফল

+-------+
| Value |
+-------+
| 20    |
| 30    |
| 40    |
| 70    |
| 80    |
| 90    |
| 8     |
| 9     |
| 10    |
+-------+

ব্যাখ্যা:

  • Value > 10 - ১০-এর চেয়ে বড় মানগুলোর জন্য TRUE (1), ছোট/সমানের জন্য FALSE (0)।
  • DESC - TRUE (1) আগে আসে, FALSE (0) পরে।
  • Value ASC - প্রতিটি গ্রুপের ভিতরে এসেন্ডিং সর্ট।
  • ফলাফল: ১০+ মানগুলো ছোট থেকে বড় (20..90), তারপর ১০ বা ছোট মানগুলো ছোট থেকে বড় (8, 9, 10)।

ব্যবহার ক্ষেত্র: পেজিনেশনে "লোড মোর" টাইপ UI, যেখানে সাম্প্রতিক/বড় আইডি প্রথমে, তারপর পুরনো/ছোট আইডি।

  1. MySQL-এ ORDER BY CASE WHEN দিয়ে করেন্ট ডেটের ভিত্তিতে দিন ও মাস অনুযায়ী সাজানো

  2. একক MySQL কোয়ারি: প্রথম টেবিল থেকে মান বেছে নিয়ে দ্বিতীয় টেবিলে ইনসার্ট করা

  3. MySQL-এ UNION SELECT এবং IN ক্লজ একসাথে ব্যবহার

  4. MySQL에서 LIKE와 CHAR_LENGTH()를 한 쿼리에 함께 사용하기