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

MySQL में 'ñ' खोजें लेकिन 'n' वाले रिकॉर्ड बाहर रखें (स्पैनिश कॉलेशन)

स्पैनिश कॉलेशन (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 क्लॉज की आवश्यकता नहीं होगी।

  1. - MySQL में IN() का उपयोग करके मिलान खोजें और रिकॉर्ड प्राप्त करें

    IN() ऑपरेटर का उपयोग करके विशिष्ट मानों के सेट से मिलान करने वाली पंक्तियाँ प्राप्त करें। टेबल बनाना और डेटा डालना CREATE TABLE DemoTable ( Id INT, FirstName VARCHAR(20), Gender ENUM(Male,Female) ); Query OK, 0 rows affected (1.73 sec) INSERT INTO DemoTable VALUES(1,Chris,Male),(10,E

  1. - MySQL में LIKE और OR का उपयोग करके टेक्स्ट खोज क्वेरी

    LIKE वाइल्डकार्ड पैटर्न के साथ OR का उपयोग करके टेक्स्ट कॉलम में एकाधिक खोज शब्दों के लिए फ़िल्टर करें। टेबल बनाना और डेटा डालना CREATE TABLE DemoTable (Subject TEXT); Query OK, 0 rows affected (0.86 sec) INSERT INTO DemoTable VALUES(Introduction to MySQL),(Deep Dive using Java),(C in Depth),(In

  1. - MySQL टेबल में ^ वर्ण कैसे खोजें?

    ^ वर्ण खोजने के लिए, नीचे दिए गए सिंटैक्स में LIKE ऑपरेटर का उपयोग करें: select table_schema,table_name,column_name from information_schema.columns where column_name like %^%; आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable1826 ( `^` varchar(20), Name varchar(20), `^Age` in