2012-07-28 92 views
1

這是關於我應該設置數據庫的最佳方式的一般問題,它不是特定於軟件,而是信息是MYSQL。構建數據庫表中數據的最佳方法

我監視1000「家」,又有多少人是存在於該房子在給定時間以後在一些統計數據,如使用:

這房子通常最充分的是在一個特定的時間範圍 平均容量一般 所有房屋和特定房屋的最長時間範圍。

我將檢查每小時有多少人在場。

什麼是建立這個MySQL表的最佳方式?

回答

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 

免責聲明:部分/全部這些查詢可能無法正常工作: )

編輯:他們工作!這裏的顯示動作

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

+0

他們一個SQL小提琴這是我怎麼想的,但我被困在查詢會怎麼看,這是有道理的現在。 – ParoX 2012-07-28 00:45:42

+0

編輯答案添加一些更多細節和演示 – Charleh 2012-07-28 00:52:10

相關問題