यदि आप इसे एक ही कथन में करना चाहते हैं (ऐसा लगता है जैसे आप चाहते हैं), तो मैं INSERT ... ON DUPLICATE KEY UPDATE
का उपयोग करने की सलाह दूंगा। सिंटैक्स, इस प्रकार है:
INSERT INTO table (id, someothervalue) VALUES (1, 'hi mom')
ON DUPLICATE KEY UPDATE someothervalue = 'hi mom';
प्रारंभिक INSERT
यदि निर्दिष्ट कुंजी मान (या तो प्राथमिक कुंजी या अद्वितीय) के साथ कोई मौजूदा रिकॉर्ड नहीं है, तो कथन निष्पादित होगा। यदि कोई रिकॉर्ड पहले से मौजूद है, तो निम्न UPDATE
कथन (someothervalue = 3
) निष्पादित किया जाता है।
यह MySQL के सभी संस्करणों में समर्थित है। अधिक जानकारी के लिए, MySQL संदर्भ मैनुअल पृष्ठ देखें। INSERT ... ON DUPLICATE KEY UPDATE