
専門学校の制作でデータを格納・表示するものを作っています。
とはいっても、ブログみたいなアルゴリズムなので難しくはないです。
ただ、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で質問しましょう!
似たような質問が見つかりました
- MySQL my_itemsテーブルのIDにAUTO_INCREMENT を追加ができるかで 1 2023/01/03 09:09
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- HTML・CSS 自身のHPにYouTube動画を貼り付けるのが出来なくなり困ってます 1 2022/11/11 10:44
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
- PostgreSQL PostgressからMySQL(MariaDB)へ構造を変更する際のTimestamp等について 2 2023/04/04 12:09
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- PHP 10文字以降は非表示にしたいんですが、文法が分かりませんアドバイスお願い致します 1 2022/07/10 20:37
- MySQL SHOW CREATE TABLE posts;これって何ですか? 3 2022/08/28 22:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
一つ前に戻るには…
-
SQL、2つのテーブルで条件一致...
-
Accessでデータシートに同じデ...
-
SQLでUPSERTを一度に複数行やる...
-
sqlplusで表示が変なので、出力...
-
update文で改行を入れる
-
「テーブルに座って……」という...
-
会社の飲み会の幹事になり、座...
-
データベースのインポートがで...
-
SQLにて指定日付より前、かつ最...
-
SELECT 文の NULL列は?
-
SQL*LoaderでCSVから指定した列...
-
テーブルで一番古いレコードだ...
-
L2SWはARPテーブルを持っている?
-
飲み会で、座敷orテーブルどち...
-
結合テーブルでINSERTする方法...
-
テーブル名をカラムとして取得...
-
C#で電卓のプログラムを組んで...
-
ACCESSのマクロでテーブルのデ...
-
MS Access から PostgreSQL へ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
一つ前に戻るには…
-
1列について重複行を除いて全列...
-
ビューに追加・削除が出来ません。
-
mysqlでJOIN文
-
挿入先テーブルに存在しないレ...
-
DBの文字コード切り替え
-
1000万件のデータをmysqlで効率...
-
PHP上のSQLで、SELECT文をいく...
-
mysqlのフィールド名
-
mysqlでのテーブル削除について...
-
最大値を持つレコードを削除したい
-
複数の列にまたがってユニーク...
-
MySQL INSERT文 エラー
-
【ストアドプロシージャ】条件...
-
テーブル作成時のエラーについ...
-
MySQLでテーブルとビューの区別
-
空欄のあるレコードの処理
-
会社の飲み会の幹事になり、座...
-
「テーブルに座って……」という...
-
SQL、2つのテーブルで条件一致...
おすすめ情報