MySQL में REGEXP/RLIKE का उपयोग करके दो स्वरों से शुरू होने वाले मान चुनना
किसी कॉलम के मान को दो स्वर वर्णों (vowels) से शुरू होने वाले रिकॉर्ड चुनने के लिए, आप RLIKE या REGEXP पैटर्न मिलान का उपयोग कर सकते हैं।
उदाहरण के साथ पूर्ण कार्यान्वयन
आइए पहले एक टेबल बनाते हैं:
mysql> CREATE TABLE DemoTable664 (CityName VARCHAR(100));
रिकॉर्ड डालना
mysql> INSERT INTO DemoTable664 VALUES('Springfield'), ('Austin'), ('Franklin'), ('OAKLAND'), ('Anchorage');
सभी रिकॉर्ड प्रदर्शित करना
mysql> SELECT * FROM DemoTable664;
आउटपुट:
+-------------+
| CityName |
+-------------+
| Springfield |
| Austin |
| Franklin |
| OAKLAND |
| Anchorage |
+-------------+
5 rows in set (0.00 sec)
दो स्वरों से शुरू होने वाले रिकॉर्ड के लिए REGEXP क्वेरी
mysql> SELECT * FROM DemoTable664
WHERE CityName RLIKE '^[aeiouAEIOU][aeiouAEIOU]';
आउटपुट:
+----------+
| CityName |
+----------+
| Austin |
| OAKLAND |
+----------+
2 rows in set (0.00 sec)
पैटर्न व्याख्या:
^- स्ट्रिंग की शुरुआत[aeiouAEIOU]- कोई भी स्वर (छोटा या बड़ा)[aeiouAEIOU]- दूसरा स्वर- संयुक्त: शुरुआत में लगातार दो स्वर
मिलान विश्लेषण:
- Austin: 'Au' - दोनों स्वर ✓
- OAKLAND: 'OA' - दोनों स्वर ✓
- Springfield: 'Sp' - पहला व्यंजन ✗
- Franklin: 'Fr' - पहला व्यंजन ✗
- Anchorage: 'An' - पहला स्वर, दूसरा व्यंजन ✗
केस-इनसेंसिटिव विकल्प
MySQL में RLIKE डिफ़ॉल्ट रूप से केस-इनसेंसिटिव होता है (कॉलेशन पर निर्भर)। स्पष्ट केस-इनसेंसिटिव के लिए:
WHERE CityName REGEXP '^[aeiou]{2}' COLLATE utf8mb4_general_ci
संबंधित पैटर्न
'^[aeiouAEIOU]'- एक स्वर से शुरू'^[^aeiouAEIOU]'- व्यंजन से शुरू'[aeiouAEIOU]{2}'- कहीं भी लगातार दो स्वर