创建视图的问题(sql2005)
我想在student数据库创建一个查询班级信息的视图,学生信息表中统计着各个班的人,班级表中有相应的名称和代码,我还想sum``as``统计出各个班的总人数,怎么写???...
我想在student数据库创建一个查询班级信息的视图,学生信息表中统计着各个班的人,班级表中有相应的名称和代码,我还想sum``as``统计出各个班的总人数,怎么写?????????
展开
1个回答
展开全部
楼主提供的信息太少,我大致提示一下吧,要求各班总人数,需要使用rollup。
下边的视图中学生信息表中包含学生姓名和班级ID,班级表中包含班级ID和班级名,如果还有其他字段,可以根据实际情况添加。
create view 视图名称
as
select case when grouping(班级名)=1 then '合计' else 班级名 end as 班级
, case when grouping(学生姓名)=1 then '总计' else 学生姓名 end as 学生姓名
,count(*) as 人数
from 学生信息表 a,班级表 b
where a.班级ID=b.班级ID
group by 班级名, 学生姓名 with rollup
下边的视图中学生信息表中包含学生姓名和班级ID,班级表中包含班级ID和班级名,如果还有其他字段,可以根据实际情况添加。
create view 视图名称
as
select case when grouping(班级名)=1 then '合计' else 班级名 end as 班级
, case when grouping(学生姓名)=1 then '总计' else 学生姓名 end as 学生姓名
,count(*) as 人数
from 学生信息表 a,班级表 b
where a.班级ID=b.班级ID
group by 班级名, 学生姓名 with rollup
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询