utf8_general_ciとutf8_unicode_ciの違い
20101028_間違いのあったところを修正しました
データベースを作るとき、もしくは文字コードの変更の必要があるときとか
utf8_general_ciにするか、utf8_unicode_ciにするかで、モヤっとしてたのですが、
字ヅラから、日本語だと勝手にunicodeの方がいいのかなと思ってたら違った!
正確性を求めるときは、utf8_general_ci
速度を求めるときは、utf8_unicode_ci
表記が逆でした!参考にしちゃった人ゴメンナサイ(><)
正確性を求めるときは、utf8_unicode_ci
速度を求めるときは、utf8_general_ci
だそうです。
なので、utf8_general_ciをデフォルトと考えておいた方がよいらしい。(速度を重要視するという点で)
やっぱりちゃんと調べないとダメですね~(><)
[参考]
★utf8_general_ci と utf8_unicode_ci の違い – Ceekz Logs (吉田光男@筑波の日記)
探索等において、文字列照合の正確性と速度のトレードオフのようですね。正確性を重視するのであれば utf8_unicode_ci を使用して、速度を重視するのであれば utf8_general_ci を使用すればいいみたい。
ディスカッション
コメント一覧
逆ですよー
http://dev.mysql.com/doc/refman/5.1/ja/charset-unicode-sets.html
バイナリ比較の utf8_bin が最も早いです
ご指摘ありがとうございます!直しました。
頭の中ではその認識だったので、どうやら書くときに間違えちゃったみたいです。
サーバーのphpmyadminだと、unicodeがデフォルトなんで、
ついそのままにしてしまうのですが・・・。
utf8_binも頭に入れておこうと思います!