
専門学校の制作でデータを格納・表示するものを作っています。
とはいっても、ブログみたいなアルゴリズムなので難しくはないです。
ただ、mysqlの構造をかんがえる時に疑問があります。
item table構造
id title body categoryid
category table構造
id title
例えば、1000万件のデータを格納する時、
(1)1つのitem tableに1000万件のデータを格納して、
該当カテゴリーのもの一覧表示したり、
該当アイテムのものを表示したりする場合。
(2)item tableをカテゴリーごとに分ける。
cate1_item_table
cate2_item_table
1つのtableには100万件のデータが入り、
cate**_item_tableは10個存在する。
この時、どちらのほうが負荷がかからないでしょうか。
どなたか詳しい方要らしゃれば教えていただけないでしょうか。
どうぞよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
テーブルを分ける意味は全くありません。
理由
1.カテゴリ以外の検索では各テーブルの
検索結果をUNIONクエリにするが、
UNIONクエリは効率が悪い。
2.カテゴリ指定時にテーブルを選ぶ処理が
必要になる。
3.カテゴリが増えたり減ったりした時の
メンテナンスが面倒である。
item table のcategoryidに索引を設けるか、
category tableと外部キー結合させるなどで
categoryidによる検索を効果的に実行する
ことができます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
一つ前に戻るには…
-
mysqlでJOIN文
-
降順で並び替えて昇順で受け取...
-
SQL 複数テーブルのupdate
-
【エクセル】データテーブルの...
-
sqlplusで表示が変なので、出力...
-
「テーブルに座って……」という...
-
男性と2人で飲食店に行きテーブ...
-
リレーションシップが出来ません。
-
ワークテーブルなのに自動で削...
-
AccessのSQL 部分一致したデー...
-
条件付DELEATE文について
-
エクセルで都道府県、市区町村...
-
Access2000 のテーブルの...
-
他のデータベースとのテーブル結合
-
構造が同じ別テーブルInsert In...
-
SQL、2つのテーブルで条件一致...
-
アクセス2010について
-
テーブル名をカラムとして取得...
-
left joinなどで結合対象のレコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
一つ前に戻るには…
-
グループからランダムに抽出す...
-
最大値を持つレコードを削除したい
-
【ストアドプロシージャ】条件...
-
mysqlでJOIN文
-
テーブル作成時のNULLの列につ...
-
ビューに追加・削除が出来ません。
-
PHP上のSQLで、SELECT文をいく...
-
update文の副問い合わせ使用
-
1列について重複行を除いて全列...
-
外部キー、親を調べるにはshow ...
-
副問い合わせの限界値はどれく...
-
mysqlのフィールド名
-
矛盾していないでしょうか?
-
MySQL INSERT文 エラー
-
「テーブルに座って……」という...
-
AccessのSQL 部分一致したデー...
-
降順で並び替えて昇順で受け取...
-
外部キーだけのテーブル(主キ...
-
Accessでデータシートに同じデ...
おすすめ情報