MySQL संस्करण 8.0 और इसके बाद के संस्करण में, आप <का उपयोग कर सकते हैं कोड>REGEX_REPLACE() समारोह। में अनुपस्थिति वही , कुछ जटिल स्ट्रिंग ऑपरेशन किए जा सकते हैं। यह आपके पुष्टि , कि उक्त उप-स्ट्रिंग किसी मान में केवल एक बार घटित हो रही है।
REPLACE()
वाइल्डकार्ड, पैटर्न, रेगुलर एक्सप्रेशन आदि के लिए कोई समर्थन नहीं है। यह केवल दिए गए फिक्स्ड को प्रतिस्थापित करता है दूसरे फिक्स्ड . के साथ सबस्ट्रिंग सबस्ट्रिंग, एक बड़ी स्ट्रिंग में।
इसके बजाय, हम
post_content
. के कुछ हिस्सों को निकालने का प्रयास कर सकते हैं . हम '
के बाद अनुगामी सबस्ट्रिंग को एक्सट्रेक्ट करेंगे। हिस्से। Substring_Index()का उपयोग करके कोड>
समारोह। इसी तरह, हम
'">
अब, हम बस Concat() कर सकते हैं
आवश्यक post_content
get प्राप्त करने के लिए ये भाग . आप यहां उपयोग किए गए विभिन्न स्ट्रिंग फ़ंक्शंस का विवरण पा सकते हैं:https://dev.mysql.com/doc/refman/8.0/en/string-functions.html
मैंने एक WHERE
भी जोड़ा है शर्त, ताकि हम केवल उन्हीं पंक्तियों को चुनें जो हमारे दिए गए सबस्ट्रिंग मानदंड से मेल खाती हों।
UPDATE wp_posts
SET post_content =
CONCAT(
SUBSTRING_INDEX(post_content,
'<p><span id="more-',
1),
SUBSTRING(post_content,
LOCATE('"></span></p>',
post_content,
LOCATE('<p><span id="more-',
post_content)
) + 13) -- 13 is character length of "></span></p>
)
WHERE post_content LIKE '%<p><span id="more-%"></span></p>%';
क्वेरी #1:अपडेट संचालन से पहले का डेटा
SELECT * FROM wp_posts;
| post_content |
| ------------------------------------------------------- |
| adasdaadsa<p><span id="more-35075"></span></p>121324124 |
| 1412123123<p><span id="more-232"></span></p>adasdaafas |
क्वेरी #2:डेटा अपडेट ऑपरेशन के बाद
SELECT * FROM wp_posts;
| post_content |
| -------------------- |
| adasdaadsa121324124 |
| 1412123123adasdaafas |