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

MySQL-এ ৫ দিনের বেশি পুরনো রো মুছে ফেলা (DATEDIFF এবং NOW)

DATEDIFF() দিয়ে পুরনো রেকর্ড ডিলিট

MySQL-এ বর্তমান তারিখ থেকে নির্দিষ্ট দিনের বেশি পুরনো রেকর্ড মুছে ফেলতে DATEDIFF() এবং NOW() ব্যবহার করুন।

সিনট্যাক্স

DELETE FROM yourTableName
WHERE DATEDIFF(NOW(), yourDateColumn) > 5;

উদাহরণ (ধরে নিচ্ছি আজ ২০১৯-০৩-১০)

mysql> CREATE TABLE deleteRowsOlderThan5Demo (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name VARCHAR(100), Post_Date DATE
    -> );
mysql> INSERT INTO deleteRowsOlderThan5Demo (Name, Post_Date) VALUES
    -> ('Larry','2019-03-11'), ('Mike','2019-02-12'), ('Sam','2019-03-10'),
    -> ('Carol','2019-03-01'), ('David','2019-01-31'), ('Maxwell','2019-01-26'), ('John','2019-02-19');

৫ দিনের বেশি পুরনো রো ডিলিট

mysql> DELETE FROM deleteRowsOlderThan5Demo
    -> WHERE DATEDIFF(NOW(), deleteRowsOlderThan5Demo.Post_Date) > 5;

ফলাফল (শুধু ১০ এবং ১১ মার্চের রো থাকে)

+----+-------+------------+
| Id | Name  | Post_Date  |
+----+-------+------------+
| 1  | Larry | 2019-03-11 |
| 3  | Sam   | 2019-03-10 |
+----+-------+------------+

নোট: DATEDIFF(date1, date2) = date1 - date2 (দিনের সংখ্যা)। বড় টেবিলে ইনডেক্স ব্যবহার করুন।

  1. MySQL-এ বর্তমান তারিখের চেয়ে পুরনো রেকর্ড সিলেক্ট করা

  2. MySQL কোয়ারি: অন্য একটি তারিখ থেকে ৩০ দিন পুরনো DATE মুছে ফেলা

  3. MySQL-এ ১৪ দিনের চেয়ে সাম্প্রতিক তারিখ বের করা

  4. MySQL-এ FROM_UNIXTIME ও NOW ব্যবহার করে ১ দিন পুরনো টাইমস্ট্যাম্প রো ফেচ করা