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

MySQL में एक ही क्वेरी से अलग-अलग कॉलम मानों में एकाधिक शब्दों को खोजें

परिचय

MySQL में किसी टेबल के कॉलम में एक साथ कई शब्दों को खोजने के लिए WHERE क्लॉज के साथ एकाधिक LIKE ऑपरेटर का उपयोग किया जा सकता है। यह तरीका तब उपयोगी होता है जब आपको किसी टेक्स्ट कॉलम में कई कीवर्ड्स की उपस्थिति जांचनी हो।

उदाहरण: टेबल बनाना और डेटा डालना

सबसे पहले एक डेमो टेबल बनाते हैं:

mysql> CREATE TABLE DemoTable1536 (
    -> Sentence TEXT
    -> );
Query OK, 0 rows affected (0.51 sec)

अब इसमें कुछ रिकॉर्ड डालते हैं:

mysql> INSERT INTO DemoTable1536 VALUES('I like MySQL database.');
Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO DemoTable1536 VALUES('Java is an Object Oriented Programming Language');
Query OK, 1 row affected (0.30 sec)
mysql> INSERT INTO DemoTable1536 VALUES('I only like data structure');
Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO DemoTable1536 VALUES('MongoDB is NoSQL database');
Query OK, 1 row affected (0.46 sec)

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

mysql> SELECT * FROM DemoTable1536;

आउटपुट:

+--------------------------------------------------+
| Sentence                                         |
+--------------------------------------------------+
| I like MySQL database.                           |
| Java is an Object Oriented Programming Language  |
| I only like data structure                       |
| MongoDB is NoSQL database                        |
+--------------------------------------------------+
4 rows in set (0.00 sec)

एकाधिक शब्दों को खोजने की क्वेरी

हम OR ऑपरेटर के साथ कई LIKE शर्तों का उपयोग करके 'like', 'database', और 'data' शब्दों को खोजेंगे:

mysql> SELECT * FROM DemoTable1536
    -> WHERE (Sentence LIKE '%like%')
    ->    OR (Sentence LIKE '%database%')
    ->    OR (Sentence LIKE '%data%');

परिणाम

+----------------------------+
| Sentence                   |
+----------------------------+
| I like MySQL database.     |
| I only like data structure |
| MongoDB is NoSQL database  |
+----------------------------+
3 rows in set (0.00 sec)

व्याख्या

  • %like% - 'like' शब्द वाले सभी वाक्य खोजता है
  • %database% - 'database' शब्द वाले वाक्य खोजता है
  • %data% - 'data' शब्द वाले वाक्य खोजता है
  • OR ऑपरेटर किसी भी शर्त के पूरी होने पर रिकॉर्ड लौटाता है

यह तरीका सरल और प्रभावी है जब आपको एक ही कॉलम में कई कीवर्ड्स खोजने हों।

  1. - MySQL में अलग-अलग टेबल से NOT NULL मानों की गिनती एक क्वेरी में

    सबक्वेरी से कई टेबल की नॉन-NULL गिनती COUNT(column) NULL मानों को स्वचालित रूप से बाहर करता है। सबक्वेरी के साथ कई टेबल की गिनती एक साथ प्राप्त करें। पहली टेबल INSERT INTO DemoTable1 VALUES(1), (NULL), (2), (3); दूसरी टेबल INSERT INTO DemoTable2 VALUES(10), (NULL), (NULL); एक क्वेरी में दोनों

  1. - विशिष्ट कॉलम मानों के लिए एकल MySQL क्वेरी में एकाधिक काउंट प्राप्त करें

    इसके लिए, आप विशिष्ट कॉलम के लिए पैरामीटर मान के साथ एग्रीगेट फंक्शन SUM() का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1790 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20), Score int ); Query OK, 0 rows affected (0.94 sec) इन्सर्ट कमा

  1. - एकल MySQL क्वेरी में एक कॉलम में एकाधिक मान कैसे डालें?

    सिंटैक्स एक कॉलम में एकाधिक मान डालने के लिए, निम्नलिखित सिंटैक्स का उपयोग करें: INSERT INTO yourTableName VALUES (yourValue1), (yourValue2), ... (yourValueN); उदाहरण सबसे पहले एक टेबल बनाते हैं: ); अब INSERT कमांड का उपयोग करके रिकॉर्ड डालें: INSERT INTO DemoTable2022 VALUES (Computer Science)