स्पैनिश कॉलेशन (utf8_spanish_ci) से 'ñ' और 'n' को अलग-अलग मानना
डिफ़ॉल्ट कॉलेशन (utf8_general_ci या utf8mb4_general_ci) में 'ñ' और 'n' को समान माना जाता है। इन्हें अलग करने के लिए स्पैनिश कॉलेशन उपयोग करें।
सिंटैक्स
SELECT * FROM yourTableName WHERE yourColumnName LIKE '%ñ%' COLLATE utf8_spanish_ci;
उदाहरण
CREATE TABLE NotIncludenDemo (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
ClientName VARCHAR(20)
);
INSERT INTO NotIncludenDemo (ClientName) VALUES
('John'), ('Johñ'), ('Johnñy');
डिफ़ॉल्ट कॉलेशन (गलत परिणाम - 'n' भी मिलेगा)
SELECT * FROM NotIncludenDemo WHERE ClientName LIKE '%ñ%';
परिणाम: John, Johñ, Johnñy (सभी तीन)
स्पैनिश कॉलेशन के साथ (सही परिणाम)
SELECT * FROM NotIncludenDemo WHERE ClientName LIKE '%ñ%' COLLATE utf8_spanish_ci;
आउटपुट
+----+------------+ | Id | ClientName | +----+------------+ | 2 | Johñ | | 3 | Johnñy | +----+------------+
उपलब्ध स्पैनिश कॉलेशन
utf8_spanish_ci- पारंपरिक स्पैनिश (ñ, n से अलग)utf8_spanish2_ci- आधुनिक स्पैनिश (ñ, n के बाद आता है लेकिन तुलना में अलग)utf8mb4_spanish_ci,utf8mb4_spanish2_ci- utf8mb4 संस्करण
कॉलम लेवल पर स्थायी कॉलेशन सेट करना
ALTER TABLE NotIncludenDemo MODIFY ClientName VARCHAR(20) CHARACTER SET utf8 COLLATE utf8_spanish_ci;
इसके बाद COLLATE क्लॉज की आवश्यकता नहीं होगी।