MySQL-এ UPDATE ব্যবহার করে প্রতিটি সারোর ইন্টিজার এবং ডেট কলামে মান যোগ করা
একটি টেবিলের সব সারোর একটি নির্দিষ্ট কলামে একই মান যোগ বা বিয়োগ করতে UPDATE কমান্ড ব্যবহার করা হয়। ইন্টিজার এবং ডেট কলামের জন্য পৃথক পদ্ধতি।
সিনট্যাক্স: ইন্টিজার কলাম
UPDATE yourTableName SET intColumn = intColumn + value; UPDATE yourTableName SET intColumn = value WHERE intColumn IS NULL;
সিনট্যাক্স: ডেট কলাম
UPDATE yourTableName SET dateColumn = ADDDATE(dateColumn, INTERVAL 1 MONTH);
উদাহরণ
টেবিল তৈরি
mysql> CREATE TABLE addEachRowValue (
-> Id INT NOT NULL AUTO_INCREMENT,
-> Amount INT,
-> ShippingDate DATE,
-> PRIMARY KEY(Id)
-> );
ডেটা ইনসার্ট
mysql> INSERT INTO addEachRowValue(Amount, ShippingDate) VALUES(100, '2019-02-21'); mysql> INSERT INTO addEachRowValue(Amount, ShippingDate) VALUES(10, '2013-04-22'); mysql> INSERT INTO addEachRowValue(Amount, ShippingDate) VALUES(110, '2015-10-25'); mysql> INSERT INTO addEachRowValue(Amount, ShippingDate) VALUES(150, '2016-03-27'); mysql> INSERT INTO addEachRowValue(Amount, ShippingDate) VALUES(190, '2018-12-29');
আপডেট করার আগে
mysql> SELECT * FROM addEachRowValue;
+----+--------+--------------+ | Id | Amount | ShippingDate | +----+--------+--------------+ | 1 | 100 | 2019-02-21 | | 2 | 10 | 2013-04-22 | | 3 | 110 | 2015-10-25 | | 4 | 150 | 2016-03-27 | | 5 | 190 | 2018-12-29 | +----+--------+--------------+
Amount কলামে ২০ যোগ করা
mysql> UPDATE addEachRowValue SET Amount = Amount + 20; Query OK, 5 rows affected
mysql> SELECT Amount FROM addEachRowValue;
+--------+ | Amount | +--------+ | 120 | | 30 | | 130 | | 170 | | 210 | +--------+
ShippingDate-এ ১ মাস যোগ করা
mysql> UPDATE addEachRowValue SET ShippingDate = ADDDATE(ShippingDate, INTERVAL 1 MONTH); Query OK, 5 rows affected
mysql> SELECT ShippingDate FROM addEachRowValue;
+--------------+ | ShippingDate | +--------------+ | 2019-03-21 | | 2013-05-22 | | 2015-11-25 | | 2016-04-27 | | 2019-01-29 | +--------------+
নোট: DATE_ADD() এবং ADDDATE() একই কাজ করে। INTERVAL দিয়ে DAY, MONTH, YEAR ইত্যাদি নির্দিষ্ট করা যায়।