@johnthexii द्वारा प्रदान किए गए लिंक का उपयोग करके यहां एक दृष्टिकोण दिया गया है (डेमो ) (यह सिर्फ MySQL का उपयोग कर रहा है, इसलिए यह पायथन विशिष्ट नहीं है)
CREATE TABLE UserNames (`username` varchar(35) unique, `duplicates` int);
INSERT INTO UserNames (`username`, `duplicates`)
VALUES ('stackoverflow.com', 0);
INSERT INTO UserNames (`username`, `duplicates`)
VALUES ('dba.stackexchange.com/', 0)
ON DUPLICATE KEY UPDATE `duplicates` = `duplicates`+1;
INSERT INTO UserNames (`username`, `duplicates`)
VALUES ('stackoverflow.com', 0)
ON DUPLICATE KEY UPDATE `duplicates` = `duplicates`+1;
यहाँ क्या हो रहा है इसका एक विश्लेषण दिया गया है:username फ़ील्ड को अद्वितीय के रूप में चिह्नित किया गया है, इसलिए मौजूदा उपयोगकर्ता नाम के साथ रिकॉर्ड डालने का कोई भी प्रयास डेटाबेस स्तर पर विफल हो जाएगा। फिर INSERT स्टेटमेंट में एक अतिरिक्त है
ON DUPLICATE KEY UPDATE `duplicates` = `duplicates`+1
यह MySQL को बताता है कि INSERT को विफल करने के बजाय केवल duplicates कॉलम और एक से वृद्धि। जब आप तीन INSERT कमांड चलाते हैं तो आपको दो रिकॉर्ड दिखाई देंगे, stackoverflow.com एक duplicates है 1 का मान, जबकि dba.stackexchange.com एक duplicates है 0 का मान।