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

MySQL-এ GROUP BY রেঞ্জ (Range) বাস্তবায়ন

MySQL-এ ডেটাকে নির্দিষ্ট রেঞ্জ (যেমন ০-৯, ১০-১৯, ২০-২৯...) অনুযায়ী গ্রুপ করতে গাণিতিক অপারেশন ব্যবহার করা হয়।

উদাহরণ

টেবিল তৈরি:

mysql> CREATE TABLE GroupByRangeDemo (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> YourRangeValue INT
    -> );

ডেটা ইনসার্ট:

mysql> INSERT INTO GroupByRangeDemo(YourRangeValue) VALUES(1), (7), (9), (23), (33), (35), (1017);

সকল রেকর্ড:

mysql> SELECT * FROM GroupByRangeDemo;
+----+----------------+
| Id | YourRangeValue |
+----+----------------+
|  1 |              1 |
|  2 |              7 |
|  3 |              9 |
|  4 |             23 |
|  5 |             33 |
|  6 |             35 |
|  7 |           1017 |
+----+----------------+

রেঞ্জ অনুযায়ী গ্রুপ (০-৯, ১০-১৯, ২০-২৯, ৩০-৩৯, ৪০+):

mysql> SELECT ROUND(YourRangeValue / 10), COUNT(YourRangeValue)
    -> FROM GroupByRangeDemo
    -> WHERE YourRangeValue < 40
    -> GROUP BY ROUND(YourRangeValue / 10)
    -> UNION
    -> SELECT '40+', COUNT(YourRangeValue)
    -> FROM GroupByRangeDemo
    -> WHERE YourRangeValue >= 40;
+----------------------------+-----------------------+
| round(YourRangeValue / 10) | count(YourRangeValue) |
+----------------------------+-----------------------+
| 0                          | 1                     |
| 1                          | 2                     |
| 2                          | 1                     |
| 3                          | 1                     |
| 4                          | 1                     |
| 40+                        | 1                     |
+----------------------------+-----------------------+

ব্যাখ্যা: ROUND(YourRangeValue / 10) দিয়ে প্রতিটি মানকে ১০ দিয়ে ভাগ করে রাউন্ড করা হয়েছে। ১→০.১→০, ৭→০.৭→১, ৯→০.৯→১, ২৩→২.৩→২, ৩৩→৩.৩→৩, ৩৫→৩.৫→৪। ৪০ বা তার উপরের মানগুলো আলাদা কোয়েরি দিয়ে '40+' হিসেবে গ্রুপ করা হয়েছে। আরও জটিল রেঞ্জের জন্য CASE WHEN বা FLOOR() ব্যবহার করা যেতে পারে।

  1. MySQL-এ ক্যান্ডিডেট কি (Candidate Key) বাস্তবায়ন করা

  2. MySQL-এ GROUP BY ক্লজে সাবকোয়েরি ব্যবহার করে প্রতিটি গ্রুপের প্রথম রো নির্বাচন করুন

  3. MySQL স্টোরড প্রসিডিউরে IF-ELSE শর্ত সঠিকভাবে বাস্তবায়ন

  4. ওয়ার্ডে ছবি এবং টেক্সট গ্রুপ করার উপায়