मेरा रेगेक्स है (pnr|(P|p) _.:,!"'-/$ _.:,!"'-/$)+[ _.:,!"'-/$]+[ 0-9]{3}[ _.:,!"'-/$]+[0-9]{7}
यह कॉलम से पीएनआर नंबर निकाल रहा है।
नमूना पाठ : 94eb2c0cb17ef354bb052c57f40c\r\nसामग्री-प्रकार: पाठ/सादा; charset=UTF-8\r\nसामग्री-स्थानांतरण-एन्कोडिंग पीएनआर:986-097832
94eb2c0cb17ef354bb052c57f40c\r\nसामग्री-प्रकार: pnr:986-097832 टेक्स्ट/सादा; charset=UTF-8\r\nसामग्री-स्थानांतरण-एन्कोडिंग
Pnr:986-097832 94eb2c0cb17ef354bb052c57f40c\r\nसामग्री-प्रकार: टेक्स्ट/सादा; charset=UTF-8\r\nसामग्री-स्थानांतरण-एन्कोडिंग
मुझे एक mysql क्वेरी बनानी है जो केवल pnr नंबर निकालेगी
3 जवाब
SELECT REGEXP_SUBSTR(column, 'pnr:[0-9\-]{10}')
FROM table
SUBSTRING_INDEX आज़माएं
SELECT
SUBSTRING_INDEX(
SUBSTRING_INDEX('94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding pnr:986-097832', 'pnr:', -1), ' ',1);
SELECT
SUBSTRING_INDEX(
SUBSTRING_INDEX('94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: pnr:986-097832 text/plain; charset=UTF-8\r\nContent-Transfer-Encoding', 'pnr:', -1), ' ',1);
SELECT
SUBSTRING_INDEX(
SUBSTRING_INDEX('pnr:986-097832 94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding', 'pnr:', -1), ' ',1);
नमूना
mysql> SELECT
-> SUBSTRING_INDEX(
-> SUBSTRING_INDEX('94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: pnr:986-097832 text/plain; charset=UTF-8\r\nContent-Transfer-Encoding', 'pnr:', -1), ' ',1);
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| SUBSTRING_INDEX(
SUBSTRING_INDEX('94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: pnr:986-097832 text/plain; charset=UTF-8\r\nContent-Transfer-Encoding', 'pnr:', -1), ' ',1) |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 986-097832 |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0,00 sec)
mysql>
mysql> SELECT
-> SUBSTRING_INDEX(
-> SUBSTRING_INDEX('pnr:986-097832 94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding', 'pnr:', -1), ' ',1);
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| SUBSTRING_INDEX(
SUBSTRING_INDEX('pnr:986-097832 94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding', 'pnr:', -1), ' ',1) |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 986-097832 |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0,00 sec)
mysql>
Oracle के लिए हम नीचे कुछ ऐसा कर सकते हैं -
SQL> create table test2( id varchar2(2000));
Table created.
SQL> insert into test2 values ('pnr:986-097831 94eb2c0cb17ef354bb052c57f40c\r\nC
ontent-Type: text/plain; charset=UTF-8\r\nContent-Transfer-Encoding');
1 row created.
SQL> insert into test2 values('94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: pnr
:986-097832 text/plain; charset=UTF-8\r\nContent-Transfer-Encoding')
2 ;
1 row created.
SQL> insert into test2 values('94eb2c0cb17ef354bb052c57f40c\r\nContent-Type: tex
t/plain; charset=UTF-8\r\nContent-Transfer-Encoding pnr:986-097833');
1 row created.
SQL> select regexp_substr( id, '(P|p)(N|n)(R|r):[0-9]*\-[0-9]*' ) PNR FROM test2;
PNR
----------------
pnr:986-097831
pnr:986-097832
pnr:986-097833
SQL>
`
संबंधित सवाल
जुड़े हुए प्रश्न
नए सवाल
mysql
MySQL एक फ्री, ओपन सोर्स रिलेशनल डेटाबेस मैनेजमेंट सिस्टम (RDBMS) है जो स्ट्रक्चर्ड क्वेरी लैंग्वेज (SQL) का उपयोग करता है। इस टैग को अन्य DBs जैसे SQL Server, SQLite आदि के लिए उपयोग न करें। वे विभिन्न DB हैं जो सभी डेटा का प्रबंधन करने के लिए SQL की अपनी बोलियों का उपयोग करते हैं।
REGEXP_SUBSTR
केवल MySQL>= 8.0 के लिए!