सामान्य तौर पर, utf8_general_ci utf8_unicode_ci की तुलना में तेज़ है , लेकिन कम सही है।
यहाँ अंतर है:
किसी भी यूनिकोड वर्ण सेट के लिए, _general_ci collation का उपयोग करके किए गए ऑपरेशन _unicode_ci टकराव की तुलना में तेज़ होते हैं । उदाहरण के लिए, utf8_general_ci collation के लिए तुलनाएं तेज़ हैं, लेकिन utf8_unicode_ci की तुलना में थोड़ी कम सही हैं। इसका कारण यह है कि utf8_unicode_ci विस्तार जैसे मैपिंग का समर्थन करता है; वह है, जब एक वर्ण अन्य वर्णों के संयोजन के बराबर होता है। उदाहरण के लिए, जर्मन और कुछ अन्य भाषाओं में "," "ss" के बराबर है। utf8_unicode_ci भी संकुचन और आग्नेय वर्णों का समर्थन करता है। utf8_general_ci एक विरासत टकराव है जो विस्तार, संकुचन या अज्ञानतापूर्ण पात्रों का समर्थन नहीं करता है। यह पात्रों के बीच केवल एक-से-एक तुलना कर सकता है।
से उद्धृत:
http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html
अधिक विस्तृत विवरण के लिए, कृपया MySQL फ़ोरम की निम्नलिखित पोस्ट पढ़ें:
http://forums.mysql.com/read.php?103,187048,188748
Utf8_bin के लिए: दोनों utf8_general_ci और utf8_unicode_ci केस-असंवेदनशील तुलना करते हैं। इसके विपरीत , utf8_bin केस-संवेदी है (अन्य अंतरों के बीच), क्योंकि यह वर्णों के द्विआधारी मूल्यों की तुलना करता है।
utf8उपयोग करेंutf8mb4। यहाँ टिप्पणी करना क्योंकि इस लोकप्रिय प्रश्न के उत्तर इसे संबोधित नहीं करते हैं। mathiasbynens.be/notes/mysql-utf8mb4