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