我想在为下表编写SQL查询时获得一些帮助。该表表示学生在给定日期在美食广场花费的金额。使用此表,编写一个 SQL 查询,用于计算 每个学生花费的第一个和最后一个日期以及在此期间每天花费的钱。
Student_id Date Money Spent($)
1 01.01.2017 15.13
2 03.01.2017 22.94
3 03.01.2017 37.50
2 01.02.2017 44.26
2 08.04.2017 52.62
3 09.08.2017 34.67
1 02.09.2017 43.87
3 04.11.2017 12.67
试试这个
SELECT Student_id,MIN([date]) mindate, MAX([date]) maxdate,SUM(MoneySpent) TotalSpent,
SUM(MoneySpent)/DATEDIFF ( MIN([date]) , MAX([date]) ) MoneySpentPerDay
FROM StudentExpenses
GROUP BY Student_id
使用
SELECT student_id,AVG(spent) FROM `students` GROUP BY student_id;