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

आउटपुट जिसमें स्वर के रूप में पहला और आखिरी अक्षर है (ए, ई, आई, ओ, यू)

मान लें कि सभी शहर के नाम सभी लोअरकेस अक्षर हैं, तो आप ऐसा कुछ कर सकते हैं:

select city
from   station
where  substr(city,  1, 1) in ('a', 'e', 'i', 'o', 'u')
  and  substr(city, -1, 1) in ('a', 'e', 'i', 'o', 'u')

substr(city, 1, 1) city . का सबस्ट्रिंग लेता है स्थिति 1 और लंबाई 1 से शुरू (अर्थात्, केवल पहला अक्षर)। substr(city, -1, 1) बहुत समान है, बस स्थिति अलग है:-1 मतलब अंत . से पहला अक्षर स्ट्रिंग का - तो यह आपको शहर के नाम का अंतिम अक्षर देगा।

अगर city WHERE . में अपर और लोअर केस लेटर दोनों हो सकते हैं क्लॉज उपयोग lower(city) city . के बजाय ।

संपादित करें :लोकप्रिय अनुरोध द्वारा, यहां बताया गया है कि नियमित अभिव्यक्तियों के साथ ऐसा कैसे किया जा सकता है। हालांकि यहां नियमित अभिव्यक्ति दृष्टिकोण का उपयोग करने का कोई मतलब नहीं है; मानक स्ट्रिंग फ़ंक्शन (जैसे SUBSTR) नियमित अभिव्यक्तियों के आधार पर किसी भी चीज़ की तुलना में बहुत तेज़ होने के लिए लगभग निश्चित हैं।

....
where regexp_like(city, '^(a|e|i|o|u).*(a|e|i|o|u)$', 'i')

(a|e|i|o|u) मतलब बिल्कुल उन पात्रों में से एक। ^ का अर्थ है स्ट्रिंग की शुरुआत में एंकर, और इसी तरह $ स्ट्रिंग के अंत में। कड़ाई से बोलते हुए, इसके लिए शहर का नाम कम से कम दो अक्षर लंबा होना चाहिए; यदि एक-अक्षर वाले शहर के नाम संभव हैं, तो इसे आसानी से संशोधित किया जा सकता है। (SUBSTR दृष्टिकोण में किसी परिवर्तन की आवश्यकता नहीं होगी।)

अंतिम तर्क, 'i' , रेगेक्सपी मिलान केस को असंवेदनशील बनाता है (बस जरूरत पड़ने पर)।




  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. Node.js को Windows प्लेटफॉर्म पर Oracle से कनेक्ट करें

  3. PLSql वापसी मान

  4. WEBUTIL को कॉन्फ़िगर करने के बाद Oracle फॉर्म फ्रीज हो जाता है

  5. पीएल/एसक्यूएल में स्ट्रिंग में अलग-अलग वर्णों की गिनती और नाम कैसे खोजें?