2017-03-27 12 views
0
PreStatement = myConnection.prepareStatement("" 
         + "SELECT Game1.AVG(Score),Students.FirstName,Students.LastName " 
         + "FROM Game1 " 
         + "INNER JOIN Students " 
         + "ON Game1.StudentID = Students.StudentID " 
         + "ORDER BY Students.FirstName ASC;"); 

(エラーは間違いなくAVGスコアの部分です)
しかしこれはそうです。SQL Lite平均得点

PreStatement = myConnection.prepareStatement("" 
         + "SELECT AVG(Score), 
         + "FROM Game1 " 

私は間違ったことをしていますか、私は平均スコアを得るために2つのステートメントを作っていますか?

+1

「このdoesent work」は問題の説明ではありません。 – HoneyBadger

+0

もっと質問をする前に、[良い質問をするには?](http://stackoverflow.com/help/how-to-ask)をお読みください。 –

答えて

2

PreStatement = myConnection.prepareStatement("" 
         + "SELECT AVG(Game1.Score),Students.FirstName,Students.LastName " 
         + "FROM Game1 " 
         + "INNER JOIN Students " 
         + "ON Game1.StudentID = Students.StudentID " 
         + "ORDER BY Students.FirstName ASC;"); 
+0

ありがとうございました! – Dynermite

0

あなたが学生一人当たりの平均をしたい場合は、あなたがGROUP BYを使用する必要があります。

SELECT AVG(g.Score), s.FirstName, s.LastName 
FROM Game1 g INNER JOIN 
    Students s 
    ON g.StudentID = s.StudentID 
GROUP BY s.FirstName, s.LastName 
ORDER BY s.FirstName ASC; 

表の別名も書くことや読むことをクエリが容易になります。