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

MySQL क्वेरी: जांचें कि क्या एक ही पंक्ति में कोई स्ट्रिंग किसी मान (सबस्ट्रिंग) को समाहित करती है

चूंकि हमें उसी पंक्ति से स्ट्रिंग्स का मिलान करना है, LIKE ऑपरेटर का उपयोग करें।

आइए पहले एक टेबल बनाते हैं:

mysql> create table DemoTable ( 
    FirstName varchar(100), 
    FullName varchar(100) ); 
Query OK, 0 rows affected (0.53 sec)

इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें:

mysql> insert into DemoTable values('John','John Smith'); 
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable values('David','John Miller'); 
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable values('Bob','Sam Miller'); 
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('Chris','Chris Brown'); 
Query OK, 1 row affected (0.10 sec)

सेलेक्ट स्टेटमेंट का उपयोग करके टेबल से सभी रिकॉर्ड प्रदर्शित करें:

mysql> select * from DemoTable;

यह निम्नलिखिक आउटपुट देगा:

+-----------+-------------+
| FirstName | FullName    |
+-----------+-------------+
| John      | John Smith  |
| David     | John Miller |
| Bob       | Sam Miller  |
| Chris     | Chris Brown |
+-----------+-------------+
4 rows in set (0.00 sec)

एक ही पंक्ति में स्ट्रिंग में मान (सबस्ट्रिंग) होने की जांच करने की क्वेरी

mysql> select FirstName, FullName from DemoTable where FullName LIKE concat('%', FirstName, '%');

यह निम्नलिखिक आउटपुट देगा:

+-----------+-------------+
| FirstName | FullName    |
+-----------+-------------+
| John      | John Smith  |
| Chris     | Chris Brown |
+-----------+-------------+
2 rows in set (0.00 sec)

व्याख्या

  • CONCAT('%', FirstName, '%') पैटर्न बनाता है: %John%, %David%, आदि
  • LIKE पैटर्न मिलान करता है (वाइल्डकार्ड % किसी भी स्ट्रिंग से मेल खाता है)
  • पंक्ति 1: 'John Smith' LIKE '%John%' → सच
  • पंक्ति 2: 'John Miller' LIKE '%David%' → झूठ
  • पंक्ति 3: 'Sam Miller' LIKE '%Bob%' → झूठ
  • पंक्ति 4: 'Chris Brown' LIKE '%Chris%' → सच

केस-इनसेंसिटिव मिलान

WHERE LOWER(FullName) LIKE CONCAT('%', LOWER(FirstName), '%')

या COLLATE utf8mb4_general_ci के साथ तुलना करें।

  1. - MySQL कॉलम में प्रत्येक पंक्ति के समान मान की गिनती करें?

    प्रत्येक पंक्ति के समान मान की गिनती के लिए COUNT(*) का उपयोग GROUP BY क्लॉज के साथ करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1818 ( Id int, Name varchar(20) ); Query OK, 0 rows affected (0.00 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysql> ins

  1. - MySQL में टेबल A की तुलना में टेबल B में नहीं होने पर टेबल C में डेटा डालें

    समाधान टेबल A और B पर LEFT JOIN का उपयोग करें, जहां B में मेल नहीं खाता वहां के रिकॉर्ड टेबल C में डालें। उदाहरण टेबल A (demo20): INSERT INTO demo20 VALUES (100,John), (101,Bob), (102,Mike), (103,Carol); टेबल B (demo21): INSERT INTO demo21 VALUES (100,Sam), (101,Adam), (133,Bob), (145,David); ट

  1. - C# में दो String ऑब्जेक्ट का मान समान है या नहीं जांचें

    उदाहरण C# में string (जो System.String का एलियास है) Equals() मेथड को ओवरराइड करता है ताकि सामग्री की तुलना की जा सके। दो स्ट्रिंग ऑब्जेक्ट बराबर हैं यदि उनके वर्ण समान क्रम में हों। using System; public class Demo { public static void Main(String[] args) { string str1 = John; s