मदों के लिए नकली चाबी अद्यतन मैं इसINSERT INTO .. पर एक से अधिक
INSERT INTO t (t.a, t.b, t.c)
VALUES ('key1','key2','value')
ON DUPLICATE KEY UPDATE
t.c = 'value';
INSERT INTO t (t.a, t.b, t.c)
VALUES ('key1','key3','value2')
ON DUPLICATE KEY UPDATE
t.c = 'value2';
t.a और t.b की तरह कुछ करना चाहता हूँ चाबियाँ हैं। यह सब ठीक काम करता है लेकिन मुझे दूसरे डालने पर एक त्रुटि मिलती है। PhpMyAdmin के साथ इस तरह की एक क्वेरी ठीक काम करती है लेकिन मुझे लगता है कि यह स्वतंत्र रूप से प्रश्नों को चला रहा है क्योंकि यह उस क्वेरी के परिणामों को टिप्पणियों के रूप में प्रिंट करता है?
ऐसा कुछ भी अच्छा होगा लेकिन मुझे प्रत्येक आइटम के लिए अलग-अलग मूल्यों की आवश्यकता होगी। मैं इसे पसंद करता हूं लेकिन मुझे यकीन नहीं है कि मैं प्रत्येक मान के लिए अद्यतन पर मूल्य कैसे बदल सकता हूं।
INSERT INTO t (t.a, t.b, t.c)
VALUES ('key1','key2','value'), ('key1','key3','value2')
ON DUPLICATE KEY UPDATE
t.c = ???
समस्या प्रश्न चिह्न में है, मैं वहाँ क्या कर दिया, ताकि प्रत्येक सम्मिलित/अपडेट सही मान होगा करना चाहिए? जाहिर है अगर मैं एक मूल्य डालता हूं तो सभी फ़ील्ड उस मान को प्राप्त करेंगे।
यदि दो कुंजी के साथ एकाधिक फ़ील्ड पर "अपडेट मौजूद है, अन्यथा डालें" क्वेरी करने का दूसरा तरीका है, तो मैं अन्य विचारों के लिए भी हूं। मुझे लगता है कि मैं प्रत्येक क्वेरी को अलग से चला सकता हूं (जैसे phpMyAdmin?) लेकिन यह बहुत सारे प्रश्न होने जा रहा है, इसलिए मैं वास्तव में इससे बचना चाहता हूं। मान
शानदार! और आप बहुत ही अनजान होने के लिए एसक्यूएल को डरते हैं ... – pixelfreak
mysql> परम (आईडी, संख्या) मूल्यों (3,4) पर लागू करें कुंजी अद्यतन आईडी = मूल्य ( डी) +222; क्वेरी ठीक है, 2 पंक्तियां प्रभावित (0.67 सेकंड) – zloctb