MySQL में विशेष वर्णों वाले स्ट्रिंग चुनना: REPLACE और LIKE
जब स्ट्रिंग में एपोस्ट्रोफी (') जैसे विशेष वर्ण हों, तो उन्हें खोजने के लिए REPLACE() फंक्शन का उपयोग करके विशेष वर्णों को हटाकर तुलना कर सकते हैं।
उदाहरण: "MySQL's" जैसे स्ट्रिंग खोजें
टेबल बनाएं:
CREATE TABLE DemoTable (Title TEXT);
INSERT INTO DemoTable VALUES ('MySQL'), ('MongoDB\'s'), ('MySQL\'s'), ('Java\'s');
डेटा:
+-----------+ | Title | +-----------+ | MySQL | | MongoDB's | | MySQL's | | Java's | +-----------+
एपोस्ट्रोफी हटाकर 'MySQLs' खोजें
SELECT * FROM DemoTable WHERE REPLACE(Title, '''', '') LIKE '%MySQLs%';
परिणाम:
+---------+ | Title | +---------+ | MySQL's | +---------+
व्याख्या
REPLACE(Title, '''', '')—Titleसे सभी एपोस्ट्रोफी (') हटा देता है''''— SQL में सिंगल कोट के अंदर सिंगल कोट लिखने का तरीका (एस्केप)LIKE '%MySQLs%'— परिणाम में 'MySQLs' खोजता है
एपोस्ट्रोफी एस्केप करने के अन्य तरीके
सामान्य पैटर्न: विशेष वर्ण सामान्यीकरण
ALTER TABLE DemoTable ADD FULLTEXT(Title); SELECT * FROM DemoTable WHERE MATCH(Title) AGAINST('MySQL');