SQL Server 练习题1
来源:互联网 发布:ubuntu jdk路径 编辑:程序博客网 时间:2024/04/30 07:19
题目1
问题描述:
为管理岗位业务培训信息,建立3个表:
S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄
C (C#,CN ) C#,CN 分别代表课程编号、课程名称
SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩
要求实现如下5个处理:
1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名
2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位
3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位
4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位
5. 查询选修了课程的学员人数
6. 查询选修课程超过5门的学员学号和所属单位
1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名
--实现代码:
SELECT SN,SD FROM S
WHERE [S#] IN(
SELECT [S#] FROM C,SC
WHERE C.[C#]=SC.[C#]
AND CN=N'税收基础')
2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位
--实现代码:
SELECT S.SN,S.SD FROM S,SC
WHERE S.[S#]=SC.[S#]
AND SC.[C#]='C2'
3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位
--实现代码:
SELECT SN,SD FROM S
WHERE [S#] NOT IN(
SELECT [S#] FROM SC
WHERE [C#]='C5')
4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位
--实现代码:
SELECT SN,SD FROM S
WHERE [S#] IN(
SELECT [S#] FROM SC
RIGHT JOIN C ON SC.[C#]=C.[C#]
GROUP BY [S#]
HAVING COUNT(*)=COUNT(DISTINCT [S#]))
5. 查询选修了课程的学员人数
--实现代码:
SELECT 学员人数=COUNT(DISTINCT [S#]) FROM SC
6. 查询选修课程超过5门的学员学号和所属单位
--实现代码:
SELECT SN,SD FROM S
WHERE [S#] IN(
SELECT [S#] FROM SC
GROUP BY [S#]
HAVING COUNT(DISTINCT [C#])>5)
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server 练习题1
- SQL Server练习题2
- SQL Server 练习题3
- 使用os3grid做一个基于Web和Ajax的工资表录入界面
- SQL Server练习题2
- 使用repeater而不使用datalist的最终理由
- 书评:《C# Primer》 by Joe Casad
- .net面试题
- SQL Server 练习题1
- 写在Blog访问量超过15万次
- 选取合适的dHtml Grid方案
- ASP.NET 2.0 绑定高级技巧
- 交叉报表处理实例
- 使用os3grid做一个基于Web和Ajax的工资表录入界面
- 深入浅出Attribute (中)——Attribute本质论
- “装箱”问题的贪婪法解决算法
- sql数据库质疑的恢复办法