首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每个部门的平均课程规模

每个部门的平均课程规模
EN

Stack Overflow用户
提问于 2021-02-17 17:36:51
回答 1查看 61关注 0票数 0

我正在尝试编写一个SQL查询,返回每个部门、部门名称和该部门提供的课程的平均注册学生数量。这里有三张桌子,

学生

代码语言:javascript
复制
NetId   VARCHAR(10)
FirstName   VARCHAR(255)
LastName    VARCHAR(255)
Department  VARCHAR(100)

注册人数

代码语言:javascript
复制
NetId   VARCHAR(10)
CRN INT
Credits INT
Score   REAL

课程

代码语言:javascript
复制
CRN INT
Title   VARCHAR(255)
Department  VARCHAR(100)
Instructor  VARCHAR(255)

我已经写了

代码语言:javascript
复制
select c.Department,
       (select e.CRN as col1, count(e.NetId) as col2
        from Enrollments e
          join Courses c on e.CRN = c.CRN
        group by e.CRN) as t

但是不知道该怎么继续下去。

以下是预期的结果:

会计4

CS 4

ECE 4

音乐4

物理4

心理学4

体育4

经济学3

财务3

统计数据3

EN

回答 1

Stack Overflow用户

发布于 2021-02-17 20:25:04

这是一个聚合查询。我会使用LEFT JOIN来包含没有课程的学生:

代码语言:javascript
复制
select c.Department,
       count(e.CRN) as num_students,
       count(distinct c.CRN) as num_departments,
       count(e.CRN) / count(distinct c.CRN) as avg_students_in_class
from Courses c left join
     Enrollments e
     on e.CRN = c.CRN
group by c.department
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66239236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档