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

MySQL में कीवर्ड खोज कैसे लागू करें?

LIKE ऑपरेटर और वाइल्डकार्ड % का उपयोग

MySQL में कीवर्ड खोज के लिए LIKE ऑपरेटर के साथ % वाइल्डकार्ड का उपयोग करें। % शून्य या अधिक वर्णों से मेल खाता है।

सिंटैक्स

SELECT * FROM yourTableName
WHERE yourColumnName LIKE '%keyword1%' OR yourColumnName LIKE '%keyword2%';

उदाहरण

mysql> CREATE TABLE KeywordSearchDemo (
    -> StudentId INT,
    -> StudentName VARCHAR(100)
    -> );
mysql> INSERT INTO KeywordSearchDemo VALUES
    -> (100,'Adam John'), (101,'John Smith'), (103,'John Taylor'),
    -> (104,'Carol Taylor'), (105,'Maria Garcia'), (106,'James Smith'), (110,'Mike Brown');

'John' या 'Taylor' वाले नाम खोजें:

mysql> SELECT StudentName FROM KeywordSearchDemo
    -> WHERE StudentName LIKE '%John%' OR StudentName LIKE '%Taylor%';
+--------------+
| StudentName  |
+--------------+
| Adam John    |
| John Smith   |
| John Taylor  |
| Carol Taylor |
+--------------+

नोट: बड़े डेटासेट के लिए फुल-टेक्स्ट खोज (FULLTEXT INDEX) अधिक कुशल होती है।

  1. - MySQL में विशिष्ट पैटर्न द्वारा खोज कैसे करें?

    इसके लिए आप नियमित अभिव्यक्ति का उपयोग कर सकते हैं। आइए पहले एक टेबल बनाते हैं: CREATE TABLE DemoTable ( UserId VARCHAR(100) ); टेबल में कुछ रिकॉर्ड डालें: INSERT INTO DemoTable VALUES(TRUE-908-K); टेबल से सभी रिकॉर्ड प्रदर्शित करें: SELECT * FROM DemoTable; आउटपुट: +------------+ | UserId

  1. - MySQL में कॉलम के बीच खोज कैसे करें?

    कॉलम के बीच खोज करने के लिए BETWEEN क्लॉज का उपयोग करें। आइए पहले एक टेबल बनाते हैं: CREATE TABLE DemoTable ( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Score1 INT, Score2 INT ); टेबल में कुछ रिकॉर्ड डालें: INSERT INTO DemoTable(Score1, Score2) VALUES(800, 900); टेबल से सभी रिकॉर्ड प्

  1. - MySQL में LIKE क्वेरी से % चिह्न वाले कॉलम मान खोजना

    ESCAPE करके % को शाब्दिक मिलान करना LIKE में % वाइल्डकार्ड है। इसे शाब्दिक % वर्ण के रूप में खोजने के लिए बैकस्लैश \ से एस्केप करें: \\%। तालिका और डेटा (%JohnSmith), (DavidMiller), (CarolTaylor%), (%DavidMiller); क्वेरी: % से शुरू होने वाले नाम SELECT * FROM DemoTable1497 WHERE Name LIKE \\%;