假设您是学校管理员,并且您存储了有关所提供课程、报名参加这些课程的学生以及学生在每门课程中获得的成绩的信息。您可以使用数据洞察,通过数据混合来跟踪和直观呈现此信息。
要回答的问题
此示例回答了您可能对数据提出的以下问题:
- 哪些学生参加了哪些课程,每位学生在每门课程中获得了什么成绩?
- 每门课程中获得的最高成绩是多少?
- 哪位学生在每门课程中获得了最高成绩?
样本数据
以下是示例中使用的数据。
课程:
| class_id |
class_name |
|---|---|
| c1 |
水下编篮 |
| c2 |
轻松打造家居融合风 |
| c3 |
如何训练攻击型鬣蜥 |
| c4 |
轻松学习 SQL |
学生:
| student_id |
student_name |
|---|---|
| s1 |
Brett |
| s2 |
Rick |
| s3 |
Susanna |
| s4 |
Jennifer |
成绩:
| student_id |
class_id |
grade |
|---|---|---|
| s1 |
c1 |
2 |
| s2 |
c1 |
99 |
| s3 |
c1 |
65 |
| s4 |
c1 |
3 |
| s2 |
c2 |
38 |
| s3 |
c2 |
88 |
| s4 |
c2 |
48 |
| s1 |
c3 |
7 |
| s4 |
c3 |
32 |
| s1 |
c4 |
94 |
| s2 |
c4 |
63 |
| s3 |
c4 |
75 |
| s4 |
c4 |
20 |
设置
第一步是在数据洞察中创建数据源,以连接到您的数据。演示报告使用 Google 表格作为底层数据,但您也可以将此数据存储在数据库中,例如 BigQuery 或 MySQL。
- 创建新报告。
- 添加 3 个与示例数据对应的数据源:
- 课程
- 学生
- 成绩
了解如何创建和修改数据源。
问题 1:学生、课程和获得的成绩
问题:“哪些学生参加了哪些课程,每位学生在每门课程中获得了什么成绩?”
如需回答此问题,请按以下步骤操作:
- 创建新的混合。
- 添加一个 Grades 表格,其中包含以下维度:
student_idclass_idgrade
- 添加一个 Students 表格,其中包含以下维度:
student_idstudent_name
- 添加一个 Classes 表格,其中包含以下维度:
class_idclass_name
- 使用
student_id将 Grades 表格联接到 Students 表格。 - 使用
class_id将 Grades 表格联接到 Classes 表格。 - 将这两个联接操作都设置为左外联接。

- 保存混合,然后关闭编辑器。
- 向报告添加一个表格,其中包含
student_name、class_name和grade字段。 - 按
student_name对表格进行降序排序。
您的表格应如下所示:
| student_name | class_name | grade |
|---|---|---|
| Brett | 水下编篮 | 2 |
| Brett | 如何训练攻击型鬣蜥 | 7 |
| Brett | 轻松学习 SQL | 94 |
| Jennifer | 水下编篮 | 3 |
| Jennifer | 轻松打造家居融合风 | 48 |
| Jennifer | 如何训练攻击型鬣蜥 | 32 |
| Jennifer | 轻松学习 SQL | 20 |
| Rick | 水下编篮 | 99 |
| Rick | 轻松打造家居融合风 | 38 |
| Rick | 轻松学习 SQL | 63 |
| Susanna | 水下编篮 | 65 |
| Susanna | 轻松打造家居融合风 | 88 |
| Susanna | 轻松学习 SQL | 75 |
问题 2:按课程划分的最高成绩
问题:“每门课程中获得的最高成绩是多少?”
如需回答此问题,请按以下步骤操作:
- 使用与问题 1中相同的混合。
- 向报告添加一个表格。
- 添加
class_name作为维度,并添加grade作为指标。 - 按如下方式修改
grade字段:- 将名称更改为
max_grade。 - 将聚合设置为 MAX 。
- 将名称更改为
按
max_grade对表格进行降序排序。
您的表格应如下所示:
| class_name | max_grade |
|---|---|
| 水下编篮 | 99 |
| 轻松学习 SQL | 94 |
| 如何训练攻击型鬣蜥 | 32 |
| 轻松打造家居融合风 | 88 |
问题 3:按学生和课程划分的最高成绩
问题:"哪位学生在每门课程中获得了最高成绩?"
如需回答此问题,请按以下步骤操作:
- 创建新的混合。
- 添加一个 Classes 表格,其中包含以下维度:
class_idclass_name
- 添加一个 Grades 表格,将其命名为 Grades 1,并添加维度
class_id。 - 添加
grade作为指标,并将聚合设置为 MAX 。 - 将
grade重命名为max_grade。 - 再次添加 Grades 表格,将其命名为 Grades 2,并添加以下维度:
student_idclass_idgrade
- 添加一个 Students 表格,其中包含以下维度:
student_idstudent_name
- 对每个联接使用左外联接 。
- 使用
class_id将 Classes 表格联接到 Grades 表格。 - 使用以下条件将 Grades 表格联接到 Grades 2 表格:
class_id = class_idmax_grade = grade
使用
student_id将 Grades 2 表格联接到 Students 表格。
保存混合,然后关闭编辑器。
向报告添加一个表格,其中包含
student_name、class_name和max_grade字段。
您的表格应如下所示:
| student_name | class_name | max_grade |
|---|---|---|
| Rick | 水下编篮 | 99 |
| Brett | 轻松学习 SQL | 94 |
| Susanna | 轻松打造家居融合风 | 88 |
| Jennifer | 如何训练攻击型鬣蜥 | 32 |