Oracle Database
स्ट्रिंग मैनिपुलेशन
खोज…
संघात: संचालक || या कॉन्कैट () फ़ंक्शन
ओरेकल SQL और PL / SQL ||
ऑपरेटर आपको 2 या अधिक तारों को एक साथ जोड़ने की अनुमति देता है।
उदाहरण:
निम्नलिखित customers
तालिका मानकर:
id firstname lastname
--- ----------- ----------
1 Thomas Woody
प्रश्न:
SELECT firstname || ' ' || lastname || ' is in my database.' as "My Sentence"
FROM customers;
आउटपुट:
My Sentence
---------------------------------
Thomas Woody is in my database.
Oracle मानक SQL CONCAT(str1, str2)
फ़ंक्शन का भी समर्थन करता है:
उदाहरण:
प्रश्न:
SELECT CONCAT(firstname, ' is in my database.') from customers;
आउटपुट:
Expr1
---------------------------------
Thomas is in my database.
ऊपरी
UPPER फ़ंक्शन आपको एक स्ट्रिंग में सभी निचले अक्षरों को अपरकेस में बदलने की अनुमति देता है।
SELECT UPPER('My text 123!') AS result FROM dual;
आउटपुट:
RESULT
------------
MY TEXT 123!
INITCAP
INITCAP
फ़ंक्शन एक स्ट्रिंग के मामले को परिवर्तित करता है ताकि प्रत्येक शब्द एक बड़े अक्षर से शुरू हो और बाद के सभी अक्षर लोअरकेस में हों।
SELECT INITCAP('HELLO mr macdonald!') AS NEW FROM dual;
उत्पादन
NEW
-------------------
Hello Mr Macdonald!
कम
लोअर एक स्ट्रिंग में सभी अपरकेस अक्षरों को लोअरकेस में कनवर्ट करता है।
SELECT LOWER('HELLO World123!') text FROM dual;
आउटपुट:
टेक्स्ट |
---|
हैलो दुनिया123! |
नियमित अभिव्यक्ति
मान लें कि हम केवल संख्याओं को 2 अंकों के साथ बदलना चाहते हैं: नियमित अभिव्यक्ति उन्हें (\d\d)
साथ मिलेगी।
SELECT REGEXP_REPLACE ('2, 5, and 10 are numbers in this example', '(\d\d)', '#')
FROM dual;
का परिणाम:
'2, 5, and # are numbers in this example'
यदि मैं पाठ के कुछ हिस्सों को स्वैप करना चाहता हूं, तो मैं मिलान किए गए तारों के लिए कॉल करने के लिए \1
, \2
, \3
का उपयोग करता हूं:
SELECT REGEXP_REPLACE ('swap around 10 in that one ', '(.*)(\d\d )(.*)', '\3\2\1\3')
FROM dual;
substr
SUBSTR
शुरू करने की स्थिति और निकालने के लिए वर्णों की संख्या को इंगित करके एक स्ट्रिंग का हिस्सा प्राप्त करता है
SELECT SUBSTR('abcdefg',2,3) FROM DUAL;
रिटर्न:
bcd
स्ट्रिंग के अंत से गणना करने के लिए, SUBSTR
दूसरे पैरामीटर के रूप में एक नकारात्मक संख्या को स्वीकार करता है, जैसे
SELECT SUBSTR('abcdefg',-4,2) FROM DUAL;
रिटर्न:
de
एक स्ट्रिंग में अंतिम वर्ण प्राप्त करने के लिए: SUBSTR(mystring,-1,1)
LTRIM / RTRIM
LTRIM
और RTRIM
एक स्ट्रिंग की शुरुआत या अंत (क्रमशः) से वर्ण हटाते हैं। हटाने के लिए एक या अधिक वर्णों के सेट की आपूर्ति की जा सकती है (डिफ़ॉल्ट एक स्थान है)।
उदाहरण के लिए,
select LTRIM('<===>HELLO<===>', '=<>')
,RTRIM('<===>HELLO<===>', '=<>')
from dual;
यह दिखाता है:
HELLO<===>
<===>HELLO