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

MySQL-এ VARCHAR কলাম থেকে সর্বোচ্চ সংখ্যাগত মান বের করা

MySQL-এ VARCHAR টাইপের কলামে সংখ্যা স্ট্রিং হিসেবে সংরক্ষিত থাকলে, MAX() সরাসরি ব্যবহার করলে লেক্সিকোগ্রাফিক্যাল (শব্দক্রম) বেসিতে ফলাফল আসে (যেমন '9' > '10001')। এজন্য CAST() বা CONVERT() দিয়ে সংখ্যায় রূপান্তর করতে হয়।

টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable2030 (
    -> Value VARCHAR(20)
    -> ); 
Query OK, 0 rows affected (0.44 sec)

mysql> INSERT INTO DemoTable2030 VALUES ('8'), ('1'), ('10001'), ('901');
mysql> SELECT * FROM DemoTable2030;
+-------+
| Value |
+-------+
| 8     |
| 1     |
| 10001 |
| 901   |
+-------+

সঠিক কোয়ারি

mysql> SELECT MAX(CAST(Value AS UNSIGNED)) FROM DemoTable2030;

ফলাফল

+------------------------------+
| max(cast(Value as unsigned)) |
+------------------------------+
| 10001                        |
+------------------------------+

ব্যাখ্যা: CAST(Value AS UNSIGNED) স্ট্রিংকে অচ্ছেদাত্মক পূর্ণসংখ্যায় রূপান্তর করে। তারপর MAX() সঠিক সংখ্যাগত সর্বোচ্চ মান বের করে। SIGNED ব্যবহার করলে নেতিবাচক সংখ্যাও হ্যান্ডেল করা যায়।

  1. MySQL에서 N번째로 큰 값 찾기 (LIMIT 오프셋 활용)

  2. MySQL-এ ভ্যালু ০ হলে অন্য কলাম থেকে ডেটা সিলেক্ট করা

  3. MySQL-এ কলামের সর্বোচ্চ মান বের করা (Find Maximum Value in a Column)

  4. MySQL-এ কলাম থেকে সর্বোচ্চ মান বের করা