उत्तर: नहीं
MySQL REGEXP के साथ सीधे UPDATE का समर्थन नहीं करता। इसके बजाय आपको LIKE ऑपरेटर के साथ REPLACE() फंक्शन का उपयोग करना होगा।
सिंटैक्स
UPDATE yourTableName SET yourColumnName = REPLACE(yourColumnName, 'yourValue', '') WHERE yourColumnName LIKE '%yourValueThatWillReplace%';
व्यावहारिक उदाहरण
टेबल बनाना
mysql> CREATE TABLE Replace_Demo (
Id INT NOT NULL AUTO_INCREMENT,
Value VARCHAR(20),
PRIMARY KEY(Id)
);
डेटा डालना
mysql> INSERT INTO Replace_Demo(Value) VALUES('221)');
mysql> INSERT INTO Replace_Demo(Value) VALUES('321');
mysql> INSERT INTO Replace_Demo(Value) VALUES('354)');
mysql> INSERT INTO Replace_Demo(Value) VALUES('223)');
mysql> INSERT INTO Replace_Demo(Value) VALUES('446');
अपडेट से पहले डेटा
+----+-------+ | Id | Value | +----+-------+ | 1 | 221) | | 2 | 321 | | 3 | 354) | | 4 | 223) | | 5 | 446 | +----+-------+
LIKE ऑपरेटर के साथ UPDATE
mysql> UPDATE Replace_Demo SET Value = REPLACE(Value, '221)', '') WHERE Value LIKE '%221%)';
अपडेट के बाद डेटा
+----+-------+ | Id | Value | +----+-------+ | 1 | | | 2 | 321 | | 3 | 354) | | 4 | 223) | | 5 | 446 | +----+-------+
मुख्य बिंदु
- MySQL में
UPDATE ... WHERE column REGEXP ...समर्थित नहीं है। LIKEपैटर्न मिलान के साथREPLACE()का उपयोग करें।- जटिल पैटर्न के लिए, एप्लिकेशन लेयर (PHP, Python, आदि) में प्रोसेस करें।