SQLite
 sql >> डेटाबेस >  >> RDS >> SQLite

कैसे Substr () SQLite में काम करता है

SQLite substr() फ़ंक्शन आपको स्ट्रिंग के भीतर दिए गए प्रारंभिक स्थान के आधार पर, स्ट्रिंग से एक सबस्ट्रिंग वापस करने की अनुमति देता है।

इसके लिए दो तर्कों की आवश्यकता है, और तीसरा वैकल्पिक तर्क स्वीकार करता है।

अपडेट करें :SQLite 3.34.0 (1 दिसंबर 2020 को जारी) के अनुसार, substr() अब substring() . कहा जा सकता है SQL सर्वर के साथ संगतता के लिए।

सिंटैक्स

आप substr() . पर कॉल कर सकते हैं निम्न में से किसी भी तरीके से:

substr(X,Y,Z)
substr(X,Y)
substring(X,Y,Z)
substring(X,Y)
  • X वह पूर्ण स्ट्रिंग है जिसमें वह सबस्ट्रिंग शामिल है जिसे आप वापस करना चाहते हैं।
  • Y सबस्ट्रिंग के पहले अक्षर का स्थान है जिसे आप उस स्ट्रिंग से वापस करना चाहते हैं।
  • Z वर्णों की संख्या है जिसे आप वापस करना चाहते हैं। यदि छोड़ दिया जाता है, तो बाद के सभी वर्ण वापस आ जाते हैं (Y . से प्रारंभ करते हुए) )।

अगर X एक स्ट्रिंग है तो वर्ण सूचकांक वास्तविक यूटीएफ -8 वर्णों को संदर्भित करता है। अगर X एक बीएलओबी है तो सूचकांक बाइट्स को संदर्भित करता है।

ध्यान दें कि substring() सिंटैक्स केवल SQLite 3.34.0 से उपलब्ध है।

3 तर्कों के साथ उदाहरण

substr() का उपयोग करने का तरीका दिखाने के लिए यहां एक बुनियादी उदाहरण दिया गया है तीन तर्कों के साथ।

SELECT substr('Industrial', 3, 4);

परिणाम:

dust

2 तर्कों के साथ उदाहरण

अगर मैं पिछले उदाहरण से तीसरे तर्क को छोड़ देता हूं तो मुझे निम्नलिखित परिणाम मिलते हैं।

SELECT substr('Industrial', 3);

परिणाम:

dustrial

नकारात्मक प्रारंभिक बिंदु

आप दूसरे तर्क के लिए ऋणात्मक मान प्रदान कर सकते हैं। जब आप ऐसा करते हैं, तो सबस्ट्रिंग का पहला अक्षर बाएँ के बजाय दाएँ से गिनकर पाया जाता है।

SELECT substr('Industrial', -3);

परिणाम:

ial

यहाँ एक और उदाहरण है, इस बार मैं सबस्ट्रिंग की लंबाई निर्दिष्ट करता हूँ।

SELECT substr('Industrial', -8, 4);

परिणाम:

dust

इसलिए नकारात्मक मानों का वही प्रभाव होता है जो substring() . का उपयोग करते समय होता है MySQL में फ़ंक्शन। MySQL में एक substr() भी है फ़ंक्शन, जो इसके substring() . का पर्याय है समारोह।

हालाँकि, यह भिन्न है कि SQL सर्वर नकारात्मक मानों के साथ कैसे व्यवहार करता है। जब आप substring() . पर नेगेटिव मान पास करते हैं SQL सर्वर में, यह स्ट्रिंग शुरू होने से पहले बस एक काल्पनिक बिंदु पर गिनना शुरू कर देगा।

नकारात्मक सबस्ट्रिंग लंबाई

पिछले उदाहरण में एक नकारात्मक प्रारंभिक बिंदु का उपयोग किया गया था। इस उदाहरण में, मैं ऋणात्मक लंबाई का उपयोग करने जा रहा हूं। इससे मेरा मतलब है कि मैं तीसरे तर्क के लिए एक ऋणात्मक मान प्रदान करने जा रहा हूँ।

SELECT substr('Industrial', -3, -4);

परिणाम:

ustr

इसलिए तीसरे तर्क के लिए ऋणात्मक मान प्रदान करने से शुरुआती बिंदु से पहले के वर्ण वापस आ जाते हैं।

यह तब भी लागू होता है जब दूसरा तर्क सकारात्मक मान होता है।

SELECT substr('Industrial', 7, -4);

परिणाम:

dust

डेटाबेस उदाहरण

यहां एक उदाहरण दिया गया है जो substr() का उपयोग करता है चिनूक नमूना डेटाबेस के विरुद्ध डेटाबेस क्वेरी में।

SELECT substr(Title, 1, 20)
FROM Album
LIMIT 10;

परिणाम:

substr(Title, 1, 20)
--------------------
For Those About To R
Balls to the Wall   
Restless and Wild   
Let There Be Rock   
Big Ones            
Jagged Little Pill  
Facelift            
Warner 25 Anos      
Plays Metallica By F
Audioslave          

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. रूटेड एंड्रॉइड डिवाइस पर डेटाबेस की जांच कैसे करें

  2. Uncaught TypeError कॉर्डोवा 3.5 के साथ अपरिभाषित-SQLite प्लगइन की विधि 'ओपनडेटाबेस' को कॉल नहीं कर सकता है

  3. ऑफ़लाइन अंतर्राष्ट्रीयकरण ऐप कैसे बनाएं:प्रोजेक्ट संरचना बनाएं

  4. SQLite डेटाबेस को एक्सेल में बदलने के लिए एंड्रॉइड प्रोग्राम

  5. SQLite - तालिका-बाधा अद्वितीय और स्तंभ-बाधा अद्वितीय के बीच कोई अंतर?