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

MySQL REGEXP ऑपरेटर के साथ BINARY कीवर्ड का उपयोग क्यों किया जाता है?

REGEXP को बाइनरी स्ट्रिंग के रूप में मिलान करने के लिए BINARY कीवर्ड का उपयोग करें। आइए अंतर देखते हैं।

उदाहरण

टेबल बनाएं:

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

विभिन्न केस वाले नाम डालें:

mysql> insert into DemoTable values('John');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('JOHN');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('john');
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('JOhn');
Query OK, 1 row affected (0.17 sec)

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

mysql> select * from DemoTable;

आउटपुट

+------+
| Name |
+------+
| John |
| JOHN |
| john |
| JOhn |
+------+
4 rows in set (0.00 sec)

REGEXP और BINARY के साथ REGEXP का अंतर:

mysql> select Name REGEXP 'JOHN' AS ResultWithoutBinary,
    -> Name REGEXP BINARY 'JOHN' AS ResultWithBinary from DemoTable;

आउटपुट

+---------------------+------------------+
| ResultWithoutBinary | ResultWithBinary |
+---------------------+------------------+
| 1                   | 0                |
| 1                   | 1                |
| 1                   | 0                |
| 1                   | 0                |
+---------------------+------------------+
4 rows in set (0.04 sec)

व्याख्या: बिना BINARY के, REGEXP केस-इनसेंसिटिव होता है (सभी 1 लौटाता है)। BINARY के साथ, यह केस-सेंसिटिव हो जाता है और केवल 'JOHN' से मेल खाता है।

  1. - MySQL में REGEXP का उपयोग करके डॉट और संख्या वाले रिकॉर्ड कैसे प्राप्त करें?

    MySQL में REGEXP का उपयोग करके डॉट और संख्याओं वाले पैटर्न (जैसे संस्करण संख्या) से मेल खाने वाले रिकॉर्ड प्राप्त किए जा सकते हैं। उदाहरण तालिका बनाएं: mysql> CREATE TABLE DemoTable (Version VARCHAR(20)); mysql> INSERT INTO DemoTable VALUES (1.0.0), (2.s6.9), (1.5.0); डेटा +---------+ | Vers

  1. - MySQL में SELECT और SHOW कमांड के परिणामों को कैसे संयोजित करें

    समाधान उपयोगकर्ता-परिभाषित वेरिएबल (@) या सिस्टम वेरिएबल (@@) का उपयोग करके एक ही SELECT में कई मान दिखाएं। उपयोगकर्ता वेरिएबल SELECT @first_name AS EmployeeFirstName, @last_name AS EmployeeLastName; +-------------------+------------------+ | EmployeeFirstName | EmployeeLastName | +---------------

  1. - MySQL में डायनामिक ऐरे के साथ LIKE क्वेरी कैसे करें?

    सिंटैक्स select * from yourTableName where yourColumnName2 like %yourValue% order by yourColumnName1 asc limit yourLimitValue; उदाहरण: कॉमा-सेपरेटेड नामों में खोज insert into demo74(user_names) values(John Smith1,John Smith2,John Smith3), (John Smith1), (David Smith1), (John Smith1,John Smith2,Jo