2011-10-19 53 views
2

以下是面向对象设置中数据库的方案。每一个关系都成为一个对象的集合。学生是一个人,一个学院也是一个人。这些显示为标有“isa”的有向边。所有其他有向边显示参考属性。请注意,课程中的PreReq属性是一组参考。在sql查询中使用foreach,面向对象的数据库

enter image description here

这是我需要编写查询:对于每个分类,列出学生平均GPA的数量。查询不能使用常量,例如“新生”。在输出中,每个元组应包含Classification,NumOfStudents和AvgGPA。

我想我可以做到这一点,如果我可以使用常量。我认为某种foreach可以用于分类,但我无法弄清楚如何做到这一点。请注意,查询应该使用基本的mysql语法编写。

回答

1

试试这个:

SELECT Classification, COUNT(*), AVG(GPA) 
FROM Student 
GROUP BY Classification 

看起来应该有一些外键因为Person表可能需要加入,但我不认为他们在设计中。至少group by和avg和count函数应该让你走向正确的道路。

+0

谢谢!我会对此进行实验 – user446836