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

MySQL-এ দ্বিতীয় কালাম NULL না হলে প্রথম কালাম আপডেট করুন

UPDATE এবং WHERE IS NOT NULL ব্যবহার

যদি কোনো কালাম NOT NULL হয়, তখন অন্য কালামে তার মান কপি করতে UPDATE ... SET col1 = col2 WHERE col2 IS NOT NULL ব্যবহার করুন।

উদাহরণ: টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable (
    UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    UserFirstName VARCHAR(20),
    ListOfName VARCHAR(20)
);
mysql> INSERT INTO DemoTable(UserFirstName, ListOfName) VALUES('John','Larry');
mysql> INSERT INTO DemoTable(UserFirstName, ListOfName) VALUES('Carol',NULL);
mysql> INSERT INTO DemoTable(UserFirstName, ListOfName) VALUES('David','Sam');
mysql> INSERT INTO DemoTable(UserFirstName, ListOfName) VALUES('Bob',NULL);
mysql> INSERT INTO DemoTable(UserFirstName, ListOfName) VALUES(NULL,NULL);

আপডেটের আগে:

+--------+---------------+------------+
| UserId | UserFirstName | ListOfName |
+--------+---------------+------------+
| 1      | John          | Larry      |
| 2      | Carol         | NULL       |
| 3      | David         | Sam        |
| 4      | Bob           | NULL       |
| 5      | NULL          | NULL       |
+--------+---------------+------------+

আপডেট ক্যোয়ারি

mysql> UPDATE DemoTable SET UserFirstName = ListOfName WHERE ListOfName IS NOT NULL;
Query OK, 2 rows affected (0.26 sec)

আপডেটের পর:

+--------+---------------+------------+
| UserId | UserFirstName | ListOfName |
+--------+---------------+------------+
| 1      | Larry         | Larry      |
| 2      | Carol         | NULL       |
| 3      | Sam           | Sam        |
| 4      | Bob           | NULL       |
| 5      | NULL          | NULL       |
+--------+---------------+------------+

ফলাফল: শুধু ID ১ এবং ৩ আপডেট হয়েছে কারণ তাদের ListOfName NULL ছিল না।

  1. MySQL-এ ALTER TABLE MODIFY দিয়ে বিদ্যমান কলামে NOT NULL অ্যাট্রিবিউট সেট করা

  2. MySQL-এ কলাম NULL হলে আপডেট করা, অন্যথায় অন্য কলাম আপডেট করা

  3. MySQL-এ একটি স্কিমা থেকে অন্য স্কিমায় ডেটা কপি করা

  4. MySQL-এ UPDATE JOIN ব্যবহার করে অন্য টেবিল থেকে ডেটা আপডেট করা