为管理岗位业务培训信息,建立3个表:S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属

题目

为管理岗位业务培训信息,建立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题:

15、已知S#:学号,SN:姓名,SD:班级,CN:课程,G:成绩。下列属于2NF的关系模式是_________。

A.R(S#,SN,SD,CN,G)

B.R(S#,SN,SD)

C.R(S#,CN,SD,G)

D.R(S#,CN,SD)


R(S#,SN,SD)

第2题:

基于这样的三个表,即学生表 S、课程表 C 和学生选课表 SC,它们的结构 如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE) 其中,S#为学号,SN 为姓名,SEX 为性别,AGE 为年龄,DEPT 为系别,C#为课程 号,CN 为课程名,GRADE 为成绩。 检索学生姓名及其所选修课程的课程号和成绩。正确的 SELECT 语句是()。

A.SELECT S.SN,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.S#

B.SELECT S.SN,SC.C#,SC.GRADE FROM SC WHERE S.S#=SC.GRADE

C.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S#

D.SELECT S.SN,SC.C#,SC.GRADE FROM S.SC


SELECT S.SN,SC.C#,SC.GRADE FROM S, SC WHERE S.S#=SC.S#

第3题:

有三个表,即学生表 S、课程表 C 和学生选课表 SC,它们的结构 如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE) 其中,S#为学号,SN 为姓名,SEX 为性别,AGE 为年龄,DEPT 为系别,C#为课程 号,CN 为课程名,GRADE 为成绩。 检索学生姓名及其所选修课程的课程号和成绩。正确的 SELECT 语句是()。

A.SELECT S.SN,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.S#

B.SELECT S.SN,SC.C#,SC.GRADE FROM SC WHERE S.S#=SC.GRADE

C.SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S#

D.SELECT S.SN,SC.C#,SC.GRADE FROM S.SC


C

第4题:

7、定义学生选修课程的关系模式如下:SC(S#,Sn,C#,Cn,G,Cr)(其属性分别为学号、姓名、课程号、课程名、成绩、学分)该关系可进—步归范化为()

A.s(S#,Sn),C(C#,Cn,Cr),SC(S#,C#,G)

B.s(S#,Sn,C#,Cn,Cr),SC(S#,C#,G)

C.C(C#,Cn,Cr),SC(S#,Sn,C#,G)

D.S(S#,Sn),C(C#,Cn),SC(S#,C#,Cr,G)


D

第5题:

学生和课程的关系模式定义为S(S,Sn,Sd,Dc,Sa)(其属性分别为学号、姓名、所在系、所在系的系主任、年龄);C(C,Cn,P)(其属性分别为课程号、课程名、先选课);SC(S,C,G)(其属性分别学号、课程号和成绩)。关系中包含对主属性传递依赖的是

A.S→Sd,Sd→Dc

B.S→Sd

C.S→Sd,(S,C)→G

D.C→P,(S,C)→G


正确答案:A

第6题:

定义学生选修课程的关系模式为SC(S,Sn,Sd,Sa,C,G)(其属性分别为学号、姓名、所在系、年龄、课程号和成绩);C(C,Cn,P)(其属性分别为课程号、课程名、先选课)。关系模式SC的主键是

A.Sn,C

B.S,C

C.S

D.C


正确答案:B

第7题:

定义学生、教师和课程的关系模式S(S,Sn,Sd,Sc,Sa)(其属性分别为学号、姓名、所在系、所在系的系主任、年龄);C(C ,Cn,P)(其属性分别为课程号、课程名、先修课);SC(S,C,G)(其属性分别为学号、课程号和成绩)。包含对非主属性部分依赖的关系

A.其他三项都不对

B.C(C ,Cn,P)

C.SC(S,C,G)

D.S(S,Sn,Sd,Sc,Sa)


正确答案:D

第8题:

请教:北京华建集团SQL面试题第1大题第2小题如何解答?

【题目描述】

2.为管理岗位业务培训信息,建立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='
税收基础')


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 GROUP BY S# HAVING COUNT(*)=
(SELECT COUNT(*) FROM C))


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)

 

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);

 

第9题:

已知学生表S、学生选课表SC,结构如下: S(S#,SN,SD,PROV) SC(S#,CN,GR) 其中S#为学号,SN为姓名,SD为系别,PROV为省区,CN为课程名,GR为成绩 请写出完成以下任务需要的SQL语句:1)查询'信息系'的学生来自哪些省区。2)按分数降序排序,输出'英语系'学生中选修了'计算机'课程的学生的姓名和成绩。


答:1) SELECT DISTINCT PROV
FROM S
WHERE SD = '信息系'
2) SELECT SN, GR
FROM S,SC
WHERE SD = '英语系' AND CN='计算机' AND S.S#= SC.S#
ORDER BY DESC