MySQL में उपयोगकर्ता-परिभाषित सत्र वेरिएबल पर पहली घटना बदलना
आप सत्र वेरिएबल पर CONCAT(), REPLACE(), LEFT(), SUBSTRING(), INSTR() का उपयोग करके केवल पहली घटना बदल सकते हैं।
उदाहरण
सत्र वेरिएबल सेट करें:
mysql> set @Sentence = 'Thks ks is a my string';
पहले 'k' को 'i' से बदलें:
mysql> select @Sentence as NewString,
-> CONCAT(REPLACE(LEFT(@Sentence, INSTR(@Sentence, 'k')), 'k', 'i'),
-> SUBSTRING(@Sentence, INSTR(@Sentence, 'k') + 1)) as ChangeOnlyOneTime;
परिणाम:
+------------------------+------------------------+ | NewString | ChangeOnlyOneTime | +------------------------+------------------------+ | Thks ks is a my string | This ks is a my string | +------------------------+------------------------+
कैसे काम करता है
INSTR(@Sentence, 'k')- पहले 'k' की स्थिति (4)LEFT(@Sentence, 4)- "Thks"REPLACE('Thks', 'k', 'i')- "This"SUBSTRING(@Sentence, 5)- " ks is a my string"CONCAT('This', ' ks is a my string')- "This ks is a my string"
टेबल कॉलम पर लागू करना
UPDATE yourTableName
SET yourColumn = CONCAT(
REPLACE(LEFT(yourColumn, INSTR(yourColumn, 'k')), 'k', 'i'),
SUBSTRING(yourColumn, INSTR(yourColumn, 'k') + 1)
);
नोट
यह तकनीक केवल पहली घटना बदलती है। सभी घटनाएं बदलने के लिए साधारण REPLACE(column, 'k', 'i') का उपयोग करें।