এক্সপ্রেশন দিয়ে সর্টিং
দুই কলামের গাণিতিক এক্সপ্রেশন (যেমন ৪×A + ৫×B) অনুযায়ী সর্ট করতে সিলেক্ট লিস্টে এক্সপ্রেশনটি এলিয়াস দিয়ে ORDER BY alias ব্যবহার করুন।
সিনট্যাক্স
SELECT (4*FirstNumber + 5*SecondNumber) AS Calculation FROM yourTable ORDER BY Calculation DESC;
উদাহরণ
টেবিল তৈরি
mysql> create table orderByAFunctionDemo (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> FirstNumber int,
-> SecondNumber int
-> );
Query OK, 0 rows affected (0.44 sec)
ডেটা ইনসার্ট
mysql> insert into orderByAFunctionDemo(FirstNumber,SecondNumber) values(10,4); Query OK, 1 row affected (0.11 sec) mysql> insert into orderByAFunctionDemo(FirstNumber,SecondNumber) values(45,78); Query OK, 1 row affected (0.17 sec) mysql> insert into orderByAFunctionDemo(FirstNumber,SecondNumber) values(23,10); Query OK, 1 row affected (0.12 sec) mysql> insert into orderByAFunctionDemo(FirstNumber,SecondNumber) values(67,237); Query OK, 1 row affected (0.16 sec) mysql> insert into orderByAFunctionDemo(FirstNumber,SecondNumber) values(12,90); Query OK, 1 row affected (0.13 sec)
সকল রেকর্ড
mysql> SELECT * FROM orderByAFunctionDemo;
আউটপুট
+----+-------------+-------------+ | Id | FirstNumber | SecondNumber| +----+-------------+-------------+ | 1 | 10 | 4 | | 2 | 45 | 78 | | 3 | 23 | 10 | | 4 | 67 | 237 | | 5 | 12 | 90 | +----+-------------+-------------+
এক্সপ্রেশন দিয়ে DESC সর্ট
mysql> SELECT (4*FirstNumber + 5*SecondNumber) AS Calculation
-> FROM orderByAFunctionDemo
-> ORDER BY Calculation DESC;
আউটপুট
+-------------+ | Calculation | +-------------+ | 1453 | | 570 | | 498 | | 142 | | 60 | +-------------+
ব্যাখ্যা: রো ৪ (৬৭, ২৩৭) → ৪×৬৭ + ৫×২৩৭ = ১৪৫৩ (সর্বোচ্চ)। এক্সপ্রেশন যেকোনো জটিল ফর্মুলা হয়তে পারে।