Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

FirstnameLastname में स्थान जोड़ने के लिए MySQL में regex + UPDATE को कैसे संयोजित करें?

सबसे पहले, REGEXP का उपयोग करके पैटर्न मिलान केस-संवेदी है। तो आपको बाइनरी का उपयोग करना होगा।

मुझे यकीन नहीं है कि MySQL में ऐसा करने का कोई बेहतर तरीका है लेकिन यह एक है। ए से जेड तक के प्रत्येक अक्षर के लिए निम्नलिखित प्रश्नों को चलाएं। मैंने ए, बी, सी, डी, ई, वाई और जेड के लिए प्रश्न दिए हैं। कृपया अन्य सभी अक्षरों के लिए कॉपी करें। एक बार जब आप उन सभी को चलाना पूरा कर लेंगे, तो आपके पास पहले और अंतिम नामों के बीच एक स्थान होगा

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'A', ' A'))
WHERE `post_title` REGEXP BINARY '[A]';

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'B', ' B'))
WHERE `post_title` REGEXP BINARY '[B]';

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'C', ' C'))
WHERE `post_title` REGEXP BINARY '[C]';

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'D', ' D'))
WHERE `post_title` REGEXP BINARY '[D]';

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'E', ' E'))
WHERE `post_title` REGEXP BINARY '[E]';

...
...

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'Y', ' Y'))
WHERE `post_title` REGEXP BINARY '[Y]';

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'Z', ' Z'))
WHERE `post_title` REGEXP BINARY '[Z]';

कृपया उपरोक्त क्वेरी उदाहरणों में BINARY के उपयोग पर ध्यान दें।

दूसरा तरीका यह हो सकता है कि सभी post_title . को पढ़ने के लिए PHP स्क्रिप्ट लिखें और फिर स्पेस जोड़ने और उन्हें डेटाबेस में वापस अपडेट करने के लिए शक्तिशाली PHP रेगुलर एक्सप्रेशन फ़ंक्शंस का उपयोग करें।

आशा है कि यह मदद करेगा!

संपादित करें :ओह! मैं भूल गया था कि डेटाबेस में रिक्त स्थान के साथ प्रविष्टियां भी हैं और उन्हें अनदेखा करने की आवश्यकता है। कृपया इसके बजाय इस क्वेरी का उपयोग करें:

UPDATE `wp_posts` 
SET `post_title` = TRIM(REPLACE(`post_title`, 'A', ' A'))
WHERE `post_title` REGEXP BINARY '[^ ][A]';



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. स्केलग्रिड डीबीएएएस एडब्ल्यूएस क्लाउड के माध्यम से MySQL होस्टिंग सेवाओं का विस्तार करता है

  2. MS SQL सर्वर से MySQL में BLOB डेटा माइग्रेट करना

  3. हेरेडोक और PHP के साथ समस्या

  4. mysqld सेवा ec2 सर्वर पर दिन में एक बार बंद हो जाती है

  5. MySQL GroupBy और इसे क्षैतिज रूप से दिखाता है