Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL SELECT में REGEXP से रेगेक्स मिलान करें

MySQL REGEXP ऑपरेटर का उपयोग करके SELECT क्वेरी में नियमित अभिव्यक्ति पैटर्न मिलान करें।

सिंटैक्स

SELECT column FROM table WHERE column REGEXP 'pattern';

टेबल बनाएं

mysql> CREATE TABLE DemoTable1892 (FirstName VARCHAR(20));

डेटा डालें

mysql> INSERT INTO DemoTable1892 VALUES('John'), ('Adam'), ('Jace'), ('Johny'), ('Johnson'), ('Jack');

'Jo' से शुरू होने वाले नाम खोजें

mysql> SELECT FirstName FROM DemoTable1892 WHERE FirstName REGEXP '^Jo';

आउटपुट:

+-----------+
| FirstName |
+-----------+
| John      |
| Johny     |
| Johnson   |
+-----------+

सामान्य REGEXP पैटर्न

पैटर्नअर्थ
^Jo'Jo' से शुरू
son$'son' से समाप्त
^J.*n$'J' से शुरू, 'n' से समाप्त
[aeiou]कोई स्वर
[0-9]कोई अंक

MySQL 8.0+ उन्नत फ़ंक्शन

  • REGEXP_LIKE(col, pattern) - बूलियन परिणाम (WHERE में उपयोगी)।
  • REGEXP_SUBSTR(col, pattern) - मिलान भाग निकालें।
  • REGEXP_REPLACE(col, pattern, repl) - मिलान प्रतिस्थापित करें।
  • REGEXP_INSTR(col, pattern) - मिलान स्थिति।

नोट

  • REGEXP डिफ़ॉल्ट कोलेशन अनुसार केस-इनसेंसिटिव। केस-सेंसिटिव: REGEXP BINARY।
  • इंडेक्स उपयोग नहीं कर सकता (फुलटेक्स्ट या जनरेटेड कॉलम इंडेक्स विकल्प)।
  • बड़े डेटा पर धीमा; सरल पैटर्न के लिए LIKE प्राथमिकता दें।
  1. - MySQL में SELECT स्टेटमेंट के अंदर CASE स्टेटमेंट का उपयोग कैसे करें?

    MySQL में CASE WHEN का उपयोग करके सशर्त तर्क MySQL में CASE WHEN अभिव्यक्ति आपको SQL क्वेरीज़ के अंदर सशर्त तर्क (if-else तर्क) लागू करने की अनुमति देती है। यह SELECT, WHERE, ORDER BY, GROUP BY आदि में उपयोग किया जा सकता है। टेबल बनाना ); Query OK, 0 rows affected (0.63 sec) डेटा डालना INSERT IN

  1. - क्या हम MySQL SELECT IN() में एकल मान सेट कर सकते हैं?

    हाँ, हम MySQL में IN() के साथ एकल मान सेट कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable -> ( -> FirstName varchar(20) -> ); Query OK, 0 rows affected (0.65 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> insert into DemoTable values(Chris)

  1. - MySQL में SELECT क्वेरी परिणाम को क्रमबद्ध करना (ORDER BY)

    टेबल से डेटा चुनते समय पंक्तियाँ टेबल में मौजूद क्रम में आती हैं। विशिष्ट क्रम में प्राप्त करने के लिए ORDER BY उपयोग करें। सिंटैक्स आरोही क्रम (डिफ़ॉल्ट): SELECT * FROM table_name ORDER BY column_name अवरोही क्रम: SELECT * FROM table_name ORDER BY column_name DESC Python में MySQL से क्रमबद्ध डेट