1

これは、データベースをセットアップする最善の方法に関する一般的な質問です。ソフトウェアに固有のものではありませんが、情報としては MYSQL です。

私は1000の「家」を監視しており、特定の時間にその家に何人の人々が存在しているかを監視しており、後で次のような統計に使用されます。

通常、特定の時間範囲で最も満室のハウスはどれか 一般的な平均キャパシティ すべてのハウスおよび特定のハウスの最も忙しい時間枠。

1時間ごとに何人いるかチェックします。

このmysqlテーブルをセットアップする最良の方法は何ですか?

4

1 に答える 1

3

(オプションで)各家のエントリが必要なようです(各場所を説明する家のテーブルと、何らかのIDを使用)。

次に、家の ID、人数、サンプルの日付/時刻を含むトランザクション テーブルが必要になります。

このようにして、必要なものを分析できます

例えば

House
   HouseID int
   Address1 varchar
   etc etc..

Attendance
   RecordID int (optional I suppose)
   HouseID int
   People int
   SampleDate datetime

平均などのクエリは十分に簡単です

SELECT AVG(People) FROM Attendance WHERE HouseID = 1 AND SampleDate BETWEEN Date1 AND Date2

特定の時間範囲で最も満員の家はどれですか

SELECT TOP 1 HouseID FROM Attendance GROUP BY HouseID ORDER BY SUM(People) DESC

免責事項: これらのクエリの一部またはすべてが機能しない可能性があります :)

編集:彼らはうまくいきます!これが実際の動作を示すSQLフィドルです

http://sqlfiddle.com/#!3/293e4/8

于 2012-07-28T00:43:01.197 に答える