2009-05-06 111 views
1

問題是: 我有一個包含詳細信息的表,用戶在註冊或更新配置文件或參與不同考試時使用此表。 我需要的報告將有一些計算,如總分數。 我想,如果最好創建新表女巫包括我需要的報告或最好在同一張桌子上工作。生成報告的最佳方式

回答

2

您能提供任何進一步詳情嗎?表中您想要查詢的字段有哪些?你想如何顯示這些信息?在網站上?對於報告?

從你所描述的,你需要兩個表。一張桌子(讓電話是'用戶')將包含關於每個用戶的信息,另一個表格將包含實際考試分數(讓我們稱這個表'結果')。

每個人在「用戶」表中有一個唯一的ID號(我稱之爲UID)來識別它們,並在「結果」表中的每個得分也有個人的UID得分與之相關。通過在'結果'表中包含用戶的UID,您可以鏈接無限數量的結果(稱爲一對多關係)。

'用戶'表看起來是這樣的:

userUID (UID for each person) | Name | User Details 
1 | Barack Obama | President 
2 | George Bush | Ex-President 

'結果'表看起來是這樣的:

UID for each exam | userUID (UID of the person who look the test) | Score 
1 | 1 | 85 
2 | 2 | 40  
3 | 1 | 82 
4 | 2 | 25 

我總是喜歡添加一個UID爲像考試一樣,因爲它可以讓你輕鬆找到特定的考試成績。

反正...查詢來獲取所有的結果奧巴馬的應該是這樣的:

SELECT Score From 'results' WHERE userUID = 1 

爲了得到結果喬治·布什,你只需要改變的userUID 2。你會顯然需要在運行此查詢之前瞭解用戶的UID(userUID)。

請注意,這些是非常基本的例子(涉及虛構人物;))。您可以輕鬆地將彙總得分字段添加到'用戶'表中,並更新每次向'結果'表中添加新結果。根據您的代碼設置的方式,這可以爲您節省查詢。

祝你好運 - 希望這會有所幫助!

+0

另一個細節 - 系統是調查系統,結果是每個問題(每個調查中的許多問題)。我們需要計算每個問題的分數。 – 2009-05-07 06:11:19