MySQL में, आप INSERT()
. का उपयोग कर सकते हैं एक स्ट्रिंग को दूसरे स्ट्रिंग में डालने के लिए कार्य करता है।
आप या तो स्ट्रिंग के कुछ हिस्सों को दूसरी स्ट्रिंग से बदल सकते हैं (जैसे किसी शब्द को बदलें), या आप मूल स्ट्रिंग को बनाए रखते हुए इसे सम्मिलित कर सकते हैं (जैसे एक शब्द जोड़ें)। फ़ंक्शन 4 तर्कों को स्वीकार करता है जो निर्धारित करते हैं कि मूल स्ट्रिंग क्या है, नई स्ट्रिंग डालने की स्थिति, मूल स्ट्रिंग से हटाए जाने वाले वर्णों की संख्या और सम्मिलित करने के लिए नई स्ट्रिंग।
यहाँ सिंटैक्स है:
INSERT(str,pos,len,newstr)
जहां str
मूल स्ट्रिंग है, pos
वह स्थिति है जिसमें नई स्ट्रिंग डाली जाएगी, len
मूल स्ट्रिंग से हटाए जाने वाले वर्णों की संख्या है, और newstr
डालने के लिए नई स्ट्रिंग है।
एक शब्द बदलें
यहां एक उदाहरण दिया गया है जहां मैं INSERT()
का उपयोग करता हूं किसी शब्द को स्ट्रिंग में बदलने के लिए:
SELECT INSERT('Cats and dogs', 6, 3, 'like');
परिणाम:
Cats like dogs
यह प्रभावी रूप से and
. शब्द को बदल देता है like
. शब्द के साथ . मैंने 6
. का इस्तेमाल किया क्योंकि शब्द और 6 वर्ण चिह्न पर शुरू हुआ, और मैंने 3
. का उपयोग किया क्योंकि मैं कितने वर्णों को हटाना चाहता हूं (शब्द and
3 वर्ण लंबा है)।
एक शब्द डालें
यहां मैं मूल स्ट्रिंग से कुछ भी हटाए बिना केवल एक शब्द सम्मिलित करता हूं:
SELECT INSERT('Cats and dogs', 10, 0, 'big ');
परिणाम:
Cats and big dogs
इसका मूल स्ट्रिंग से कुछ भी नहीं हटाने का कारण यह है कि मैंने 0
. निर्दिष्ट किया है (जिसका अर्थ है कि शून्य वर्ण हटा दिए जाने चाहिए)।
सीमा मान से बाहर
यदि आप ऐसी स्थिति निर्दिष्ट करते हैं जो मूल स्ट्रिंग की लंबाई से बाहर है, तो MySQL मूल स्ट्रिंग को अपरिवर्तित लौटा देगा।
उदाहरण:
SELECT INSERT('Cats and dogs', 20, 4, 'rabbits');
परिणाम:
Cats and dogs
यहां एक और उदाहरण दिया गया है जहां मैं एक नकारात्मक प्रारंभिक स्थिति का उपयोग करता हूं:
SELECT INSERT('Cats and dogs', -1, 4, 'rabbits');
परिणाम:
Cats and dogs
यह MySQL के INSERT()
. के बीच के अंतरों में से एक है फ़ंक्शन और ट्रांजैक्ट-एसक्यूएल का STUFF()
समारोह। T-SQL में, STUFF()
फ़ंक्शन NULL
लौटाएगा इन मामलों में।
शून्य मान सम्मिलित करना
एक अन्य क्षेत्र जहां MySQL का INSERT()
. है T-SQL के STUFF()
. से अलग है NULL मानों के साथ है। यदि आप NULL मान डालने का प्रयास करते हैं, तो MySQL NULL
लौटाएगा ।
SELECT INSERT('Cats and dogs', 6, 3, NULL);
परिणाम:
NULL