groupby下没有记录的分组字段的数量显⽰为0的⽅法 select t1.ID,isNull(sum(num),0) num from stu t1 left join
(select ID,count(*) as num from stu t1 inner join dbo.CourseStuView t2 on  t1.id=t2.stuid group by ID) t2
on t1.ID=t2.ID
group by t1.ID
执⾏后的结果
ID      Num
1          2
2          1
3          0
groupby分组
4          0
**************************************************************
Couse 课程表
ID Name
1          数学
2          英语
Stu 学⽣表
ID Name
1          ⼩赵
2          ⼩钱
3          ⼩孙
4          ⼩李
CourseStu 学⽣选课表
CourseID StuID
1          1
1          2
2          1
CourseStuView 视图
SELECT    dbo.CourseStu.CourseID, dbo.CourseStu.StuID, dbo.Course.Name, dbo.Stu.Name AS Expr1
FROM        dbo.CourseStu INNER JOIN
dbo.Course ON dbo.CourseStu.CourseID = dbo.Course.ID INNER JOIN
dbo.Stu ON dbo.CourseStu.StuID = dbo.Stu.ID
CourseID StuID Name Expr1
1          1          数学        ⼩赵
2          1          英语        ⼩赵        1          2          数学        ⼩钱

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。