[前][次][番号順一覧][スレッド一覧]

mysql:3664

From: Kouichi Matsumoto <Kouichi Matsumoto <k-m@xxxxxxxxxx>>
Date: Wed, 23 May 2001 22:37:56 +0900
Subject: [mysql 03664] ENUM 、 SET 、 CHAR(1) の選択基準に迷います。

こんばんは。松本です。お世話になります。

フォームのCheckboxで趣味を30個から選択登録し、検索も行う場合
CHAR(1)よりSETやENUM型の方が良いでしょうか?

- SETを使う場合
    バイト数 = かなり抑えられる。
    INSERT、UPDATE = データの順番も選ばない為、SQL文が簡単になる?
    検索スピード = ?(Indexは作られるのでしょうか?)
    SELECT方法 = フィールド内の横断検索や、
    SELECT * FROM tbl_name WHERE set_col & 1 & 4;のような
    複合検索等、あらゆる検索方法が可能?

- ENUMを使う場合
    バイト数 = かなり抑えられる。
    INSERT、UPDATE = データの順番も選ばない為、SQL文が簡単になる?
    検索スピード = Indexが作られるので高速
    SELECT方法 = ?

フォームのCheckBoxボタンの複数選択を格納するフィールドとして、
SET、ENUM、CHAR(1)のどれを使うのが望ましいでしょうか?
CheckBoxの選択股が4つ程度の数ならCHAR(1)の方が良い等、
ご意見頂ければ幸いです。
あと、CHAR(1)とTINYINTの採用基準も迷ってしまいます。(^^;)

よろしくお願いいたします。

///* Kouichi.Matsumoto */


[前][次][番号順一覧][スレッド一覧]

->    3664 2001-05-23 22:37 [Kouichi Matsumoto <k] ENUM 、 SET 、 CHAR(1) の選択基準に迷います。
      3675 2001-05-24 12:19 ┗[Akihiko Shinohara <s]                                       
      3681 2001-05-25 02:19  ┗[とみたまさひろ <tomm]