স্ট্রিং আকারের সংখ্যা সঠিকভাবে সর্ট করতে MySQL-এ CAST() ফাংশন ব্যবহার করুন। সিনট্যাক্স:
SELECT *FROM yourTableName ORDER BY (yourColumnName as Decimal(integerValue,integerValueAfterDecimalPoint)) desc;
উদাহরণের জন্য টেবিল তৈরি করি:
mysql> create table SortingStringDemo -> ( -> Amount varchar(10) -> ); Query OK, 0 rows affected (0.91 sec)
স্ট্রিং আকারে দশমিক সংখ্যা যোগ করুন:
mysql> insert into SortingStringDemo values('12.34'); ... mysql> insert into SortingStringDemo values('600.54'); Query OK, 1 row affected (0.11 sec)
সাধারণ সিলেক্টে স্ট্রিং হিসেবে সর্ট হবে (১২.৩৪, ১২৪.৫০, ৯.৫৯...):
mysql> select *from SortingStringDemo;
সঠিক সংখ্যাসর্ট করতে CAST ব্যবহার করুন:
mysql> select *from SortingStringDemo order by cast(Amount as Decimal(6,2)) desc;
ফলাফল (অবরোহক্রম):
+--------+ | Amount | +--------+ | 600.54 | | 150.68 | | 124.50 | | 12.34 | | 9.59 | +--------+ 5 rows in set (0.00 sec)