কোনো কলামে নির্দিষ্ট মান (বিশেষ ক্যারেক্টার সহ) খুঁজে পেলে সেটিকে NULL দিয়ে আপডেট করতে UPDATE ... SET ... WHERE কোয়েরি ব্যবহার করা হয়।
টেবিল ও ডেটা তৈরি
mysql> CREATE TABLE DemoTable1914 (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Code VARCHAR(20)
) AUTO_INCREMENT = 1001;
mysql> INSERT INTO DemoTable1914 (Code) VALUES ('John101'), ('234David'), ('100_Mike');
আপডেটের আগে
mysql> SELECT * FROM DemoTable1914;
+------+----------+ | Id | Code | +------+----------+ | 1001 | John101 | | 1002 | 234David | | 1003 | 100_Mike | +------+----------+
আপডেট কোয়েরি: '100_Mike' কে NULL করা
mysql> UPDATE DemoTable1914
SET Code = NULL
WHERE Code = '100_Mike';
আউটপুট: Query OK, 1 row affected (0.00 sec)
আপডেটের পর
mysql> SELECT * FROM DemoTable1914;
+------+----------+ | Id | Code | +------+----------+ | 1001 | John101 | | 1002 | 234David | | 1003 | NULL | +------+----------+
প্যাটার্ন ম্যাচিংয়ের জন্য LIKE/REGEXP
যদি নির্দিষ্ট মান না জানি প্যাটার্ন জানি (যেমন আন্ডারস্কোর থাকলে):
UPDATE DemoTable1914 SET Code = NULL WHERE Code LIKE '%\_%' ESCAPE '\\';
\_আন্ডারস্কোর লিটারেল ম্যাচ করে।ESCAPE '\\'ইস্কেপ ক্যারেক্টার ডিক্লেয়ার করে।
সতর্কতা
WHERE Code = NULLলিখবেন না — সেটি কখনো মিলে না। সবসময়IS NULLবা= 'value'ব্যবহার করুন।- প্রোডাকশনে আপডেটের আগে
SELECTদিয়ে যাচাই করুন।