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

MySQL-এ ORDER BY columnname*1 এর উদ্দেশ্য কী?

MySQL অর্পনೀತভাবে কলামকে সংখ্যায় কনভার্ট করে। সিনট্যাক্স:

select * from yourTableName order by yourColumnName*1;

প্রথমে একটি টেবিল তৈরি করি (VARCHAR টাইপের ID):

mysql> create table DemoTable1441 (
    -> Id varchar(30)
    -> );
Query OK, 0 rows affected (0.53 sec)

রেকর্ড ইনসার্ট করি (স্ট্রিং আকারে সংখ্যা):

mysql> insert into DemoTable1441 values('301');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable1441 values('23');
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable1441 values('345');
Query OK, 1 row affected (0.42 sec)
mysql> insert into DemoTable1441 values('10');
Query OK, 1 row affected (0.23 sec)
mysql> insert into DemoTable1441 values('38');
Query OK, 1 row affected (0.11 sec)

সব রেকর্ড দেখি (স্ট্রিং সর্ট):

mysql> select * from DemoTable1441;

আউটপুট (লেক্সিকোগ্রাফিক্যালি সর্টেড):

+------+
| Id   |
+------+
| 301  |
| 23   |
| 345  |
| 10   |
| 38   |
+------+
5 rows in set (0.00 sec)

ORDER BY id*1 ব্যবহার করে সংখ্যাসহ সর্ট:

mysql> select * from DemoTable1441
    -> order by id*1;

আউটপুট (সংখ্যা অনুযায়ী সর্টেড):

+------+
| Id   |
+------+
| 10   |
| 23   |
| 38   |
| 301  |
| 345  |
+------+
5 rows in set (0.00 sec)

মূলনীতি: স্ট্রিং কলামে সংখ্যা থাকলে *1 গুণ করলে সেটি নাম্বার হিসেবে ব \(>\)হয়ে সঠিক সর্ট হয়।

  1. PHP-এ MySQL UNHEX() ফাংশনের সমতুল্য: hex2bin()

  2. MySQL-এ Алиাস (Alias) এর শর্টহ্যান্ড সিনট্যাক্স

  3. MySQL-এ PHP stripos() এর সমতুল্য INSTR() ফাংশন ব্যবহার করা

  4. C#-তে 'is' অপারেটর উদ্দেশ্য