• ベストアンサー

char int の検索速度

ラジオボタンの値を格納するカラムがあります。 tinyint(1),CHAR(1)では 数万件溜まると検索速度は大きく異なり tinyint(1)にすべきでしょうか? ぱっと見、CHARの方が分かりすいので 悩んでいます・・

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

>tinyint(1),CHAR(1)では >数万件溜まると検索速度は大きく異なり 実測したら、処理時間に大きな差があったということですか? バージョン等が不明ですが、4.1以降なら、クライアントとサーバで文字コードが違っていて、変換が行われているといったことはありませんか?

php4
質問者

お礼

クライアントとサーバーの文字コードが異なると遅い。確かにそんな感じがあります。 高負荷サイトでは、 なるべく統一した方が良さそうですね。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.4

#1、#3回答者です。 たびたびすみません。 MySQLでは、'1'(文字表現の数値)を数値の列に入れたり、逆に1(数値の1)を文字の列に入れると、自動的にキャストしてくれますが、その分、オーバヘッドになります。 キャストされるような操作になっていませんか?

php4
質問者

お礼

キャストに関しては全く知りませんでした。 数値で済み場合、なるべくintにしたいと思います。 ありがとうございます。

すると、全ての回答が全文表示されます。
回答No.3

#1回答者です。 数値データの話でしたね。 失礼しました。

すると、全ての回答が全文表示されます。
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

そこまでこだわるならsetやenumの方がよくないですか?

php4
質問者

お礼

確かに、MYSQLの神様は、ENUMを多用しておりました。 ENUMも積極的に使用してみようと思います。 ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A