-
ID:I7Fack さんの質問

データベースに関する質問です。
例えば、じゃんけんを複数のユーザが定期的に行うサイトがあったとします。データベースにはユーザ情報とイベント情報があり、イベント情報にはeventID,userID1,userID2,winUserのような形で、どの二人が戦いどちらが勝ったかという情報を入れているとします。そのサイトでは、常に自分が何勝したかとか、今までに勝った数が多い人ランキング等を表示するとします。その際、Totalの勝ち数をユーザ情報のテーブルに入れておくべきなのか、それとも毎回イベント情報のテーブルから、そのユーザの勝ち数の合計を計算するべきなのかということで悩んでいます。ユーザ情報に勝ち数を入れておいたほうがすぐに計算できてよい気もしますが、いまいちどう設計するのが普通(設計の考え方)であるのかということがわかりません。皆さんだったらどうするかということでもよいのでアドバイスをいただけると助かります。

みんなの回答 4 件

ID:baygvn さんの回答

最近ひたすらこのテの質問してるの同一人物でしょ。全仕様をここで質問して決める気かよ。こういう判断を自分でできないのならハナから引き受けるな。

ID:U4SgQF

同一人物ぽいね

ID:Xq4b0M さんの回答

トランザクションでユーザー情報の更新とイベントの追加を一度に行う。
ユーザーの累計勝利数だけを表示するだけならまだしも、勝利順にソートするようだと速度的にも負荷的にも相当しんどい。

ID:JhhUyZ さんの回答

毎回勝ち数を計算するのは無駄。ユーザー情報のテーブルに入れたほうがいい。

ID:ZIvM5l さんの回答

勝ち数と近々の戦績はテーブルに格納して、必要なタイミングで正しい戦績かどうかチェックする

最終更新日:2013-04-13 (1,950 views)

関連するトピックス

ページ上部に戻る