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

MySQL-এ ORDER BY দিয়ে ডেটা এবং টাইম একসাথে সর্ট করা

MySQL-এ আলাদা DATE এবং TIME কলাম থাকলে ORDER BY dateCol, timeCol ব্যবহার করে ডেটা πρώতে তারপর টাইম অনুযায়ী সর্ট করা যায়।

টেবিল ও ডেটা

CREATE TABLE OrderByDateThenTimeDemo (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ShippingDate DATE,
    ShippingTime TIME
);

INSERT INTO OrderByDateThenTimeDemo (ShippingDate, ShippingTime) VALUES
('2018-01-24', '16:45:40'), ('2018-01-24', '15:30:35'),
('2018-04-25', '14:20:25'), ('2019-02-14', '18:07:55'),
('2019-01-31', '20:20:30');

কোয়েরি

SELECT * FROM OrderByDateThenTimeDemo
ORDER BY ShippingDate, ShippingTime;

ফলাফল

+----+--------------+--------------+
| Id | ShippingDate | ShippingTime |
+----+--------------+--------------+
| 2  | 2018-01-24   | 15:30:35     |
| 1  | 2018-01-24   | 16:45:40     |
| 3  | 2018-04-25   | 14:20:25     |
| 5  | 2019-01-31   | 20:20:30     |
| 4  | 2019-02-14   | 18:07:55     |
+----+--------------+--------------+

ব্যাখ্যা

  • প্রথমে ShippingDate ASC অনুযায়ী সর্ট
  • একই ডেটার জন্য ShippingTime ASC অনুযায়ী সর্ট
  • 2018-01-24-এর দুটি রোতে টাইম ১৫:৩০:৩৫ এবং ১৬:৪৫:৪০-এ সর্ট হয়েছে

DATETIME কলাম থাকলে

ORDER BY ShippingDateTime ASC; -- একই কলামে ডেট+টাইম থাকলে শুধু একটা ORDER BY দরকার
  1. MySQL-এ COUNT() এবং IF() একসাথে ব্যবহার করে শর্তসাপেক্ষ গুননা

  2. MySQL-এ ORDER BY CASE WHEN দিয়ে করেন্ট ডেটের ভিত্তিতে দিন ও মাস অনুযায়ী সাজানো

  3. MySQL-এ ORDER BY Amount=0, Amount দিয়ে শূন্য মানগুলো শেষে পাঠানো

  4. MySQL-এ NOW() এবং INTERVAL ব্যবহার করে সময়ের পার্থক্য বের করুন