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

इसे ओवरराइट करने के बजाय डेटाबेस फ़ील्ड में जोड़ना (MySQL अद्यतन फ़ंक्शन)

INSERT ... ON DUPLICATE KEY UPDATE . का उपयोग करने का प्रयास करें

यदि आप ON DUPLICATE KEY UPDATE को निर्दिष्ट करते हैं, और एक पंक्ति डाली जाती है जो UNIQUE अनुक्रमणिका या प्राथमिक कुंजी में डुप्लिकेट मान का कारण बनेगी, तो MySQL पुरानी पंक्ति का अद्यतन करता है।

उदाहरण के लिए, यदि कॉलम a को UNIQUE घोषित किया गया है और इसमें मान 1 है, तो निम्नलिखित दो कथनों का समान प्रभाव है:

INSERT INTO table (a,b,c) VALUES (1,2,3)
  ON DUPLICATE KEY UPDATE c=c+1;

UPDATE table SET c=c+1 WHERE a=1;

(प्रभाव उस तालिका के लिए समान नहीं हैं जहां a एक ऑटो-इन्क्रीमेंट कॉलम है। ऑटो-इंक्रीमेंट कॉलम के साथ, एक INSERT स्टेटमेंट ऑटो-इन्क्रीमेंट वैल्यू को बढ़ाता है लेकिन UPDATE नहीं।)

ON DUPLICATE KEY UPDATE क्लॉज में कॉमा द्वारा अलग किए गए कई कॉलम असाइनमेंट हो सकते हैं।

ON DUPLICATE KEY UPDATE के साथ, प्रभावित-पंक्तियों का मान प्रति पंक्ति 1 है यदि पंक्ति को एक नई पंक्ति के रूप में डाला गया है, और 2 यदि कोई मौजूदा पंक्ति अपडेट की गई है।

आशा है कि इससे मदद मिलेगी।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उपयोगकर्ता सेटिंग्स के लिए डेटाबेस तालिका संरचना

  2. अद्यतन SQL क्वेरी में ऑफ़सेट या ऑफ़सेट को सीमित करें

  3. UTC_TIMESTAMP () उदाहरण – MySQL

  4. पायथन मल्टीथ्रेडिंग के साथ MySQL कनेक्शन को कैसे हैंडल करें?

  5. क्या मुझे इसे संग्रहीत करने के बाद MySQL परिणाम मुक्त करना है?