स्ट्रिंग कार्यों की सूची

दिनांक और समय से अधिक फ़ंक्शन - केवल स्ट्रिंग प्रकार। जो SQL में CHAR(n) और VARCHAR(n) प्रकारों द्वारा दिया जाता है। आइए उनमें से सबसे लोकप्रिय को याद करें:

समारोह विवरण
1 लंबाई (एसटीआर) पारित स्ट्रिंग की लंबाई बाइट्स में लौटाता है
2 CHAR_LENGTH(str) पारित स्ट्रिंग की लंबाई वर्णों में लौटाता है
3 पता लगाएँ (पदार्थ, str), indexOf() विधि के समान स्ट्रिंग में एक सबस्ट्रिंग की खोज करता है
4 LOCATE(substr,str,pos) पॉज़ से शुरू होने वाली स्ट्रिंग में एक सबस्ट्रिंग की खोज करता है
5 CONCAT(str1,str2,...) कई पंक्तियों को जोड़ता है
6 सबस्ट्र (), सबस्ट्रिंग () वर्णों की श्रेणी द्वारा दिया गया सबस्ट्रिंग लौटाता है
7 कम (एसटीआर) एक स्ट्रिंग को लोअरकेस में बदलता है
8 अपर (एसटीआर) एक स्ट्रिंग को अपरकेस में बदलता है
9 बदलना() एक स्ट्रिंग में एक सबस्ट्रिंग को बदलता है
10 मिलान() जाँचता है कि क्या कोई स्ट्रिंग किसी दिए गए पैटर्न से मेल खाता है
ग्यारह ट्रिम (एसटीआर) स्ट्रिंग के आरंभ और अंत में खाली वर्णों को काटता है
12 एलटीआरआईएम (एसटीआर) एक स्ट्रिंग की शुरुआत में खाली वर्णों को काटता है
13 आरटीआरआईएम (एसटीआर) स्ट्रिंग के अंत में खाली वर्णों को काटता है
14 TO_BASE64(str) एक स्ट्रिंग को बेस 64 में कनवर्ट करता है
15 FROM_BASE64(str) बेस 64 से एक स्ट्रिंग को कनवर्ट करता है

मैंने जानबूझकर कार्यों को छोटे समूहों में बांटा ताकि यह समझना आसान हो सके कि उनके साथ कैसे काम करना है। नीचे हम प्रत्येक समूह से एक कार्य पर विचार करेंगे। आप आधिकारिक दस्तावेज में स्ट्रिंग्स के साथ काम करने के लिए कार्यों की पूरी सूची पा सकते हैं ।

चलिए स्ट्रिंग को कन्वर्ट करते हैं

आइए पहले सबसे सरल कार्यों से निपटें जो एक स्ट्रिंग को थोड़े भिन्न रूप में परिवर्तित करते हैं। उदाहरण के लिए, एक स्ट्रिंग को अपरकेस और लोअरकेस में बदलें। सामान्य तौर पर, उनका व्यवहार जावा भाषा में समान कार्यों के समान होता है।

इसलिए मैं केवल कुछ उदाहरणों के साथ एक तालिका दूंगा।

# अनुरोध परिणाम
1 लंबाई चुनें ('पाठ') 4
2 लंबाई चुनें ('हैलो') 12
3 नीचे चुनें ('हाय') नमस्ते
4 अपर सेलेक्ट करें ('हैलो') नमस्ते
5 सबस्ट्रेट चुनें ('हैलो', 2, 3) नदी
6 सबस्ट्रेट चुनें ('हाय, आप कैसे हैं?', 8) आप कैसे हैं?

JDK के अपने समकक्षों की तरह ही कार्य अपेक्षा के अनुरूप काम करते हैं।

एकमात्र चेतावनी: पहली पंक्ति में, परिणाम 4 है, 8 नहीं। बात यह है कि लैटिन वर्णों को एन्कोड करने के अनुरोध में 1 बाइट (ASCII एन्कोडिंग) का उपयोग किया जाता है। लेकिन यदि आप डेटाबेस से डेटा के साथ काम करते हैं, तो स्ट्रिंग की लंबाई डेटाबेस एन्कोडिंग सेटिंग पर निर्भर करेगी । डेटाबेस के साथ काम करते हुए आपको कई आश्चर्य मिलेंगे :)

तार के साथ जटिल क्रियाएं

खैर, स्ट्रिंग्स के साथ काम करते समय अधिक जटिल चीजों को देखते हैं। आप क्या लेकर आएंगे ...

कार्य तालिका से कार्यों को प्रदर्शित करते हैं, और यदि कार्य की समय सीमा पहले ही बीत चुकी है, तो कार्य विवरण में EXPIRED शब्द जोड़ें!

दिलचस्प लगता है। हालाँकि हमने अभी तक जटिल परिस्थितियों को नहीं सीखा है, इसलिए आइए कार्य को थोड़ा सरल करें। आइए बस एक प्रश्न लिखें जो पिछले कार्यों की एक सूची प्रदर्शित करेगा, लेकिन शीर्षक में "EXPIRED!" शब्द जोड़ना सुनिश्चित करें। .

ऐसा करने के लिए, हमें CONCAT फ़ंक्शन का उपयोग करना होगा:

   SELECT CONCAT( 'EXPIRED! ', name) FROM task 
   WHERE deadline < CURDATE() 

इस प्रश्न का परिणाम होगा:

concat ('समाप्त हो गया!', नाम)
खत्म हो चुका! दृश्यपटल पर एक बग ठीक करें

अनुशंसा। यदि आपको डेटा को थोड़े अलग रूप में बदलने की आवश्यकता है, तो यह जावा कोड स्तर पर भी किया जा सकता है। लेकिन अगर आप SQL सर्वर-साइड स्ट्रिंग फ़ंक्शंस (WHERE के अंदर) का उपयोग करना चाहते हैं, तो आप निश्चित रूप से उनके बिना नहीं कर सकते।