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

MySQL में केवल संख्यात्मक पंक्तियां कैसे लौटाएं? REGEXP का उपयोग

केवल संख्यात्मक पंक्तियां लौटाने के लिए REGEXP का उपयोग करें।

टेबल बनाएं

mysql> create table DemoTable (
    -> StudentId varchar(100)
    -> );
Query OK, 0 rows affected (0.51 sec)

रिकॉर्ड्स डालें

mysql> insert into DemoTable values('John74747');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('8494575Carol');
Query OK, 1 row affected (0.19 sec)
mysql> insert into DemoTable values('985755645');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('Carol-9032');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('101');
Query OK, 1 row affected (0.17 sec)

सभी रिकॉर्ड्स देखें

mysql> select * from DemoTable;
+--------------+
| StudentId    |
+--------------+
| John74747    |
| 8494575Carol |
| 985755645    |
| Carol-9032   |
| 101          |
+--------------+
5 rows in set (0.00 sec)

केवल संख्यात्मक पंक्तियां लौटाने का क्वेरी

mysql> select * from DemoTable where StudentId REGEXP '^[0-9]+$';

आउटपुट:

+-----------+
| StudentId |
+-----------+
| 985755645 |
| 101       |
+-----------+
2 rows in set (0.17 sec)

REGEXP पैटर्न व्याख्या:

  • ^ - स्ट्रिंग की शुरुआत
  • [0-9] - कोई भी अंक
  • + - एक या अधिक बार
  • $ - स्ट्रिंग का अंत
  • ^[0-9]+$ - पूरा स्ट्रिंग केवल अंकों से बना हो

वैकल्पिक: StudentId NOT REGEXP '[^0-9]' (कोई गैर-अंक वर्ण नहीं)।

  1. - MySQL में स्ट्रिंग फील्ड में संख्यात्मक वर्णों के आधार पर पंक्तियों को समूहित करें

    स्ट्रिंग फील्ड के साथ शून्य (0) जोड़कर MySQL के निहित प्रकार रूपांतरण का उपयोग करके अग्रणी संख्यात्मक भाग निकालें। टेबल बनाना और डेटा डालना CREATE TABLE DemoTable (StudentId VARCHAR(100)); Query OK, 0 rows affected (0.92 sec) INSERT INTO DemoTable VALUES(9844Bob),(6375DavidMiller),(007),(97474Bo

  1. - MySQL में LEFT() फंक्शन का उपयोग करके केवल 15 वर्ण कैसे प्राप्त करें?

    MySQL में LEFT() फ़ंक्शन का उपयोग करके स्ट्रिंग के बाएं से निर्दिष्ट संख्या में वर्ण प्राप्त किए जा सकते हैं। ध्यान दें: यह शब्द नहीं, वर्ण गिनता है। सिंटैक्स LEFT(string, length) उदाहरण तालिका बनाएं और डेटा डालें: mysql> CREATE TABLE DemoTable (Title TEXT); mysql> INSERT INTO DemoTable VALU

  1. - MySQL में ENUM कॉलम से केवल 'NO' मानों की गणना करें

    MySQL में ENUM कॉलम पर सशर्त गणना के लिए बूलियन अभिव्यक्ति का योग (SUM(condition)) उपयोग कर सकते हैं। MySQL में TRUE = 1 और FALSE = 0 होता है। टेबल बनाएं mysql> CREATE TABLE DemoTable1829 ( Name VARCHAR(20), isTopper ENUM(YES,NO) ); डेटा डालें mysql> INSERT INTO DemoTable1829 VALUES(