2014-02-26 67 views
0

我有兩個表格,玩家和GameLog。SQL平均分組按

玩家有位置和Player_ID

GameLog有Player_ID,對手,並取得

我的目標是通過位置「C」

過去15天內退貨對陣每個對手的平均分

這裏是我使用的查詢:

SELECT DISTINCTROW NBAGameLog.Opp, 
    (SELECT AVG(NBAGameLog.Points) 
    FROM NBAGameLog INNER JOIN Players ON NBAGameLog.Player_ID = Players.Player_ID 
    WHERE (((NBAGameLog.Date_Played) Between Date()-15 And Date())) AND Players.Position = "C") AS Expr1 
FROM Players INNER JOIN NBAGameLog ON Players.Player_ID = NBAGameLog.Player_ID 
GROUP BY NBAGameLog.Opp; 

這將返回所有球隊的名單和整體平均點S.無聊,而不是被團隊分開。例如,它返回:

ATL 19.12 
BOS 19.12 
NY 19.12 

當它應該是顯示平均分agains ATL,對BOS的平均點等

有什麼想法?

+0

哈哈,現在第一個三重雙重問題,你試圖預測NBA比賽什麼的?如果你最終得到一個好的系統,讓我知道;) – pegicity

回答

0

這是你的問題:

我的目標是通過位置「C」

這應該不需要花哨返回在過去15天內取得了對每個對手的平均分步法來回答。這看起來像一個基本的聚合查詢。我認爲這是你想要的:

SELECT NBAGameLog.Opp, AVG(NBAGameLog.Points) 
FROM Players INNER JOIN 
    NBAGameLog 
    ON Players.Player_ID = NBAGameLog.Player_ID 
WHERE (NBAGameLog.Date_Played Between Date()-15 And Date() AND 
     Players.Position = "C" 
GROUP BY NBAGameLog.Opp; 
+0

哇,我感到很傻......我覺得我嘗試了這樣的東西,它不工作。太簡單了,謝謝!此外,它不會讓我很快接受答案,但我會盡快完成......再次感謝。 – fullOfQuestions