2015-11-13 50 views
0

我需要創建一個查詢,顯示至少有一個團隊參加遊戲時,會議平均出席人數。訪問sql查詢幫助 - 足球數據庫

我可以得到平均的團隊1沒有問題。 Relationships screenshot

enter image description here

SELECT Conference.ConferenceName, AVG(Game.Attendance) AS AVG_ATT 
FROM (Conference INNER JOIN School ON Conference.[ConferenceID] = School.[ConferenceID]) 
INNER JOIN Game ON School.[SchoolID] = Game.[Team1] 
GROUP BY Conference.ConferenceName; 

我有被添加的Team2方程的問題。

+0

我想下面的方法工作,但如果一個遊戲包含來自同一會議2隊出席被添加兩次。 – Ronzer

+0

我不太明白這個問題 - 你能問一個帶有示例數據的新問題嗎?請使用http://www.sensefulsolutions.com/2010/10/format-text-as-table.html – Andre

回答

1

在Access SQL中,您可以使用比Table1.Field1 = Table2.Field2更復雜的JOIN表達式,但請注意,您將無法在查詢設計器中編輯查詢。

SELECT Conference.ConferenceName, AVG(Game.Attendance) AS AVG_ATT 
FROM (Conference INNER JOIN School ON Conference.[ConferenceID] = School.[ConferenceID]) 
INNER JOIN Game ON (
     School.[SchoolID] = Game.[Team1] 
    OR School.[SchoolID] = Game.[Team2] 
) 
GROUP BY Conference.ConferenceName; 
+0

這正是我正在尋找的謝謝 – Ronzer

+0

你可能會考慮[接受](http:// stackoverflow。 com/help/someone-answers)答案。 :) @Ronzer – Andre

+0

我認爲這是我一直在尋找的,但平均值不正確。如果一個遊戲包含來自同一個會議的兩個小組,它應該只將該出席次數添加到該計算一次,但它似乎會增加兩次出席率。 – Ronzer

0

我更改爲團隊表,它使查詢變得非常簡單。我喜歡在遊戲桌內擁有Team1和team2,我可能會試着用你的方法來看看它的效果如何。

game and team screenshot