समस्या:
आप SQLite में एक स्ट्रिंग के आरंभ और अंत से रिक्त स्थान या विशिष्ट वर्ण निकालना चाहते हैं।
उदाहरण:
हमारे डेटाबेस में category
दो कॉलम में डेटा के साथ:id
और name
।
आईडी | <थ>नाम|
---|---|
1 | ' मिठाई ' |
2 | 'मांस' |
3 | 'सब्जियां' |
आइए शुरुआत और अंत में अनावश्यक स्थान को हटाने के लिए प्रत्येक श्रेणी के उत्पादों के नाम को ट्रिम करें।
समाधान:
हम TRIM
. का उपयोग करेंगे समारोह। यहां वह प्रश्न है जो आप लिखेंगे:
SELECT TRIM(' ', name) AS new_name FROM category;
ध्यान दें कि निकालने के लिए वर्ण वैकल्पिक है; यदि आप स्पेस कैरेक्टर को हटाना चाहते हैं तो आप केवल कॉलम का नाम निर्दिष्ट कर सकते हैं:
SELECT TRIM(name) AS new_name FROM category;
दोनों प्रश्नों के परिणाम यहां दिए गए हैं:
नया_नाम |
---|
'मिठाई' |
'मांस' |
'सब्जियां' |
चर्चा:
TRIM
का उपयोग करें यदि आप किसी तालिका में स्ट्रिंग को ट्रिम करना चाहते हैं तो SQLite डेटाबेस में कार्य करें। यह फ़ंक्शन आपको एक स्ट्रिंग की शुरुआत और/या अंत से एक विशिष्ट वर्ण को हटाने की अनुमति देता है। यह निम्नलिखित तर्क लेता है:
- वह वर्ण जिसे आप स्ट्रिंग से ट्रिम करना चाहते हैं, जो डिफ़ॉल्ट रूप से एक स्थान है।
- स्ट्रिंग कॉलम का नाम जिसे ट्रिम किया जाना है।
हमारे उदाहरण में, ऐसा दिखता है:
TRIM(' ' , name)
SQLite हमें केवल एक स्ट्रिंग की शुरुआत या अंत से एक स्थान या अन्य वर्णों को निकालने की अनुमति देता है।
नीचे दिया गया उदाहरण RTRIM()
. का उपयोग करके प्रत्येक श्रेणी के नाम के अंत से स्थान को हटा देता है समारोह:
SELECT RTRIM(name) AS new_name FROM company;
नया_नाम |
---|
'मिठाई' |
'मांस' |
'सब्जियां' |
जैसे TRIM()
, RTRIM()
फ़ंक्शन दो तर्क लेता है:वर्ण निकालने के लिए, और स्ट्रिंग को ट्रिम करने के लिए। फिर से, आप केवल कॉलम का नाम निर्दिष्ट कर सकते हैं यदि ट्रिम करने के लिए वर्ण एक स्थान है।
यदि आप किसी स्ट्रिंग की शुरुआत से वर्णों को हटाना चाहते हैं लेकिन अंत से नहीं, तो LTRIM()
का उपयोग करें समारोह:
SELECT LTRIM(name) AS new_name FROM company;
बेशक, आप इस फ़ंक्शन का उपयोग दो तर्कों के साथ कर सकते हैं:निकालने के लिए वर्ण और छंटनी की जाने वाली स्ट्रिंग।
ऊपर दी गई क्वेरी शुरुआत में बिना स्पेस के नाम कॉलम लौटाती है:
नया_नाम |
---|
'मिठाई' |
'मांस' |
'सब्जियां' |