2

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

在此处输入图像描述

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

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

4

1 回答 1

1

试试这个:

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

看起来应该有一些外键,因为 Person 表可能需要连接,但我在设计中没有看到它们。至少 group by 和 avg 和 count 函数应该让你走上正确的道路。

于 2011-10-19T00:57:24.017 回答