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

MySQL में एकाधिक डेटा डालें और मौजूदा होने पर अपडेट करें

यह केवल एक इंडेक्स क्लैश है जो पंक्ति को अद्यतन करने के लिए डुप्लिकेट का उल्लंघन करेगा, न कि एक नई पंक्ति बनाने के लिए। इंडेक्स क्लैश एक प्राथमिक कुंजी हो सकती है, एक अन्य इंडेक्स पर एक सिंगल कॉलम या कई कॉलम में समग्र इंडेक्स हो सकता है।

दी गई नीचे बल्कि लंगड़ा है, लेकिन कल्पनाशील है जितना मैं अभी कर सकता हूं।

create table user
(
    id int auto_increment primary key,
    userName varchar(20) not null,
    friendCount int not null,
    unique key(userName)
);

insert user(userName,friendCount) values('Jason7',0) on duplicate key update friendCount=friendCount+1;
select * from user;
+----+----------+-------------+
| id | userName | friendCount |
+----+----------+-------------+
|  1 | Jason7   |           0 |
+----+----------+-------------+

insert user(userName,friendCount) values('Fred',0) on duplicate key update friendCount=friendCount+1;
select * from user;
+----+----------+-------------+
| id | userName | friendCount |
+----+----------+-------------+
|  1 | Jason7   |           0 |
|  2 | Fred     |           0 |
+----+----------+-------------+

insert user(userName,friendCount) values('Fred',0) on duplicate key update friendCount=friendCount+1;
+----+----------+-------------+
| id | userName | friendCount |
+----+----------+-------------+
|  1 | Jason7   |           0 |
|  2 | Fred     |           1 |
+----+----------+-------------+



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Neo4j - Cypher का उपयोग करके एक नोड हटाएं

  2. MySQL के विभिन्न उद्धरण चिह्न

  3. एक MySQL कंपाउंड इंडेक्स (WRT Rails Polymorphic Associations and STI) में चाबियों का निष्पादन क्रम

  4. सामग्री-दर-उपयोगकर्ता:एक ही नाम के कॉलम वाली दो टेबल या शामिल हों?

  5. mysql dbase में अजीब अक्षर