MySql の utf8_unicode_ci、utf16_unicode_ci、utf32_unicode_ci の違いは何ですか?
パフォーマンスの違いはありますか?
utf8_unicode_ci utf16_unicode_ci utf32_unicode_ci は照合タイプです。必要に応じて、文字セットの種類を選択できます。たとえば、utf8 を使用している場合は、utf8_unicode_ci (または utf8_ 照合ファミリの他のもの) を使用する必要があり、utf16 の場合は utf16_unicode_ci などを使用する必要があります。
SO投稿からの異なる文字セットタイプの参照については、こちら
UTF-8 には、ASCII が最も一般的な文字であるという利点があります。その場合、ほとんどの文字はそれぞれ 1 バイトしか占有しません。また、ASCII 文字のみを含む UTF-8 ファイルが ASCII ファイルと同じエンコーディングを持つことも利点です。
UTF-16 は、ASCII が優勢でない場合に適しています。主に 1 文字あたり 2 バイトを使用します。UTF-8 は上位文字に 3 バイト以上を使用し始めますが、UTF-16 はほとんどの場合 2 バイトのままです。
UTF-32 は、可能なすべての文字をそれぞれ 4 バイトでカバーするため、かなり肥大化します。これを使用する利点は考えられません。
それが役に立てば幸い...