2017-03-27 69 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 Score部分)
但是这样做。SQL Lite平均分数

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

我做错了什么,或者我会做出两个声明来获得我的平均分数。

+1

“这个工作”不是问题描述。 – 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; 

表的别名也让查询更容易编写和阅读。