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]