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()ও ইন্ডেক্স ব্যবহার করতে পারে।