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

MySQL में सभी फ़ील्ड बदलें

सभी कॉलम में मान को बदलने के लिए आवश्यक SQL क्वेरी जेनरेट करने के लिए निम्न SQL क्वेरी का उपयोग करें।

select concat(
       'UPDATE my_table SET ',
       column_name,
       ' = REPLACE(', column_name, ', ''a'', ''e'');')
from information_schema.columns
where table_name = 'my_table';

इस SQL ​​​​क्वेरी को निष्पादित करने के बाद सभी मानों को बदलने के लिए बस सभी क्वेरी चलाएं।

कुछ गुगली करने के बाद परीक्षण नहीं किया गया

इस तरह एक कोर के साथ एक संग्रहित प्रक्रिया बनाएं। यह तालिका के नाम, खोजने के लिए मूल्य और बदले जाने वाले मूल्य को स्वीकार कर सकता है।

मुख्य विचार उपयोग करना है:

  1. गतिशील SQL निष्पादन के लिए तैयार कथन;
  2. किसी तालिका के सभी स्तंभों पर पुनरावृति करने के लिए कर्सर.

नीचे आंशिक कोड (अप्रयुक्त) देखें।

DECLARE done INT DEFAULT 0;
DECLARE cur1 CURSOR FOR
    SELECT column_name FROM information_schema.columns
    WHERE table_name = 'my_table';
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

OPEN cur1;
REPEAT
    SET s = concat(
       'UPDATE my_table SET ',
       column_name,
       ' = REPLACE(', column_name, ', ''a'', ''e'');');
    PREPARE stmt2 FROM s;
    EXECUTE stmt2;
    FETCH cur1 INTO a;
UNTIL done END REPEAT;
CLOSE cur1;


  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. MySQL निश्चित समस्याओं का निवारण कैसे करें

  3. क्या PHP डेवलपर्स को MySQL की संग्रहीत प्रक्रियाओं का उपयोग करना चाहिए?

  4. क्या हम SQL को S3 बकेट से AWS ec2 (उदाहरण) में आयात कर सकते हैं?

  5. जावास्क्रिप्ट फ़ंक्शन पोस्ट करें और PHP स्क्रिप्ट को कॉल करें