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

MySQL-এ ORDER BY DESC LIMIT 1 দিয়ে সবচেয়ে সাম্প্রতিক টাইমস্ট্যাম্প বের করা

MySQL-এ একাধিক টাইমস্ট্যাম্প থেকে সবচেয়ে সাম্প্রতিক (Most recent) ডেটা বের করতে ORDER BY ... DESC LIMIT 1 ব্যবহার করুন।

সিনট্যাক্স

SELECT col1, col2, timestampCol
FROM yourTableName
ORDER BY timestampCol DESC
LIMIT 1;

উদাহরণ

CREATE TABLE MostRecentDateDemo (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Name VARCHAR(10),
    ShippingDate TIMESTAMP
);

INSERT INTO MostRecentDateDemo (Name, ShippingDate) VALUES
('Larry', DATE_ADD(NOW(), INTERVAL -1 MONTH)),
('Mike', '2018-09-12 19:34:45'), ('Sam', '2017-11-24 14:30:40'),
('Carol', '2019-02-12 11:30:41'), ('David', NOW()),
('John', '2018-12-31 12:59:58');

কোয়েরি

SELECT Id, Name, ShippingDate
FROM MostRecentDateDemo
ORDER BY ShippingDate DESC
LIMIT 1;

ফলাফল

+----+-------+---------------------+
| Id | Name  | ShippingDate        |
+----+-------+---------------------+
| 5  | David | 2019-02-14 17:19:34 |
+----+-------+---------------------+

MAX() ফাংশন দিয়ে বিকল্প

SELECT * FROM MostRecentDateDemo
WHERE ShippingDate = (SELECT MAX(ShippingDate) FROM MostRecentDateDemo);

পারফরম্যান্স: টাইমস্ট্যাম্প কলামে ইন্ডেক্স থাকলে ORDER BY ... DESC LIMIT 1 খুব দ্রুত (ইন্ডেক্স স্ক্যান)। MAX()ও ইন্ডেক্স ব্যবহার করতে পারে।

  1. MySQL SELECT কোয়ারিতে এলিয়াস (alias) ব্যবহার করার পদ্ধতি

  2. MySQL কোয়েরি: 00:00 থেকে আজকের তারিখ পর্যন্ত ডেটা নির্বাচন করা

  3. MySQL-এ নির্দিষ্ট দিন (2010-11-04) থেকে বর্তমান তারিখ পর্যন্ত কোয়েরি নির্বাচন করা

  4. MySQL কোয়ারীতে 'Empty set' প্রতিস্থাপন করা