Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

अंतरराष्ट्रीय वर्णों का उपयोग करते समय मुझे MySQL क्वेरी से दोहरे परिणाम मिलते हैं, अर्थात /Ä=A &=O,

आपकी "समस्या" है utf8_unicode_ci मिलान। वह संयोजन "चरित्र विस्तार" करता है, जिसका अर्थ है कि उमलॉट्स और उनके मूल पात्रों को यहां तक ​​​​कि = में भी समान माना जाता है तुलना :

A = Ä
O = Ö
...

इस mySQL मैनुअल पेज पर दूसरा उदाहरण समस्या की व्याख्या करता है: 9.1.7.8. संयोजन के प्रभाव के उदाहरण

आपको क्या करना होगा या तो एक ऐसे संयोजन पर स्विच करना है जो umlaut और आधार वर्ण के बीच अंतर करता है (उदा. utf8_general_ci या utf8_general_bin ) या तुलना करते समय ही किसी भिन्न संयोजन पर स्विच करें:

select * from users where username like 'Björn' COLLATE utf8_general_ci;

यह स्पष्ट रूप से धीमा है, क्योंकि क्वेरी के दौरान प्रत्येक रिकॉर्ड के लिए संयोजन रूपांतरण किया जाना है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL डायनेमिक क्रॉसस्टैब क्वेरी:अतिरिक्त कॉलम के रूप में चाइल्ड रिकॉर्ड का चयन करना

  2. जावास्क्रिप्ट / Node.js में SQL इंजेक्शन को रोकें

  3. बैकटिक और सिंगल कोट में क्या अंतर हैं? क्या मैं ऊपर दिए गए प्रश्न में IF स्टेटमेंट का उपयोग कर सकता हूं?

  4. MySQL - चयन पर पंक्ति संख्या प्राप्त करें

  5. JAR फ़ाइलों के लिए क्लासपाथ सेट करना