お世話になります。
勉強しながらPHPとMySQLの連携で小規模なウェブサイトを作ったりしている身ですが、新しくアプリを設計するとき、表題にある「カラムに収めるデータの形式」について悩むことが多く、質問させてください。
例えばですが、好きな果物を会員ごとに集計したいと考えたとき、
サトシさんが好きなものは、 苺とリンゴ
真由美さんが好きなものは、 みかん
武司さんが好きなものは、 苺とみかん
清美さんが好きなものは、 リンゴ
だったとします。
そこでこのデータを会員データに収める場合、苺、りんご、みかん、といったカラムを別々に設定することもできますし、「kudamono」 というカラムを設け、サトシさんだったら、「苺,リンゴ」といったようにカンマ区切りの文字列をカラムに代入することも出来ますし、苺、りんごを配列データとしてカラムに代入することもできるかと思います。
代入するだけなら上記のように複数のパターンも考えられるのでしょうが、以下のように
苺 サトシさん、武司さん
リンゴ サトシさん、清美さん
みかん 真由美さん、武司さん
といったように、果物別に好きなもの別にデータを収集する場合、苺、りんご、みかん、といったカラムを別々に設定した方が実行時間が少なく済みそうな気がするのですが、テーブルの構成を考えると効率が悪いような気がしますし、対して1つのカラムに、カンマ区切りなり、配列なり入れると、データを呼び出す際に効率が悪いような気もしています。
と、ここで質問なのですが、以上のような場合、どのような構成がサイトを稼働していくうえで負担が少なく、また効率がいいのでしょうか?
もしかしたらケースバイケースなのかもしれませんし、この質問自体が馬鹿げていることかもしれませんが、実際に規模の大きなシステムを組まれ方など実体験も含め、お話を伺えれば幸いです。
よろしくお願い申し上げます。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/27 01:33
2018/03/27 01:42
2018/03/27 02:22
2018/03/27 03:24
2018/03/27 08:27