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

MySQL-এ DATE_ADD() এবং INTERVAL ব্যবহার করে অন্য কালামের মান অনুযায়ী তারিখ বাড়ানো

একটি কালামের মান (যেমন রিমাইন্ডার কাউন্ট) ব্যবহার করে অন্য কালামের তারিখ বাড়াতে DATE_ADD(date, INTERVAL value UNIT) ব্যবহার করা হয়।

টেবিল তৈরি এবং ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable (
    -> DueDate DATE,
    -> RepeatTime INT
    -> );
Query OK, 0 rows affected (0.57 sec)

mysql> INSERT INTO DemoTable VALUES('2019-01-23', 3), ('2019-06-22', 6), ('2019-03-28', 2), ('2017-07-25', 6);

আপডেট করার আগে

+------------+------------+
| DueDate    | RepeatTime |
+------------+------------+
| 2019-01-23 | 3          |
| 2019-06-22 | 6          |
| 2019-03-28 | 2          |
| 2017-07-25 | 6          |
+------------+------------+

RepeatTime != 6 হলে মাস বাড়ানো

mysql> UPDATE DemoTable SET DueDate = DATE_ADD(DueDate, INTERVAL RepeatTime MONTH) WHERE RepeatTime != 6;
Query OK, 2 rows affected (0.25 sec)

আপডেট করার পর

+------------+------------+
| DueDate    | RepeatTime |
+------------+------------+
| 2019-04-23 | 3          |
| 2019-06-22 | 6          |
| 2019-05-28 | 2          |
| 2017-07-25 | 6          |
+------------+------------+

ব্যাখ্যা: INTERVAL RepeatTime MONTH → কালামের মানকে ইন্টারভ্যাল হিসেবে ব্যবহার করা হয়েছে। শর্তানুযায়ী ২টি রো আপডেট হয়েছে।

  1. MySQL-এ GROUP BY এবং MIN() ব্যবহার করে টাইমস্ট্যাম্প থেকে সর্বপ্রাচীন তারিখ বের করা

  2. MySQL-এ LEFT() ফাংশন ব্যবহার করে প্রথম অক্ষর বের করে অন্য কলামে রাখা

  3. MySQL-এ ভ্যালু ০ হলে অন্য কলাম থেকে ডেটা সিলেক্ট করা

  4. MySQL-এ কলামের সর্বোচ্চ মান বের করা (Find Maximum Value in a Column)