检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的SQL语句是(  )。 查询所有选修了“计算机网络”的学生成绩,结果显示该学生的“姓名”、“系名”和“数据库原理”的“成绩”,并按成绩由高到低的顺序排列,下列语句中正确的是 (

admin2010-08-21  36

问题 检索每门课程的最高分,要求得到的信息包括课程名称、姓名和最高分,正确的SQL语句是(  )。
查询所有选修了“计算机网络”的学生成绩,结果显示该学生的“姓名”、“系名”和“数据库原理”的“成绩”,并按成绩由高到低的顺序排列,下列语句中正确的是 (    )。

选项 A、SELECT学生.姓名,学生.系名,成绩.成绩FROM学生,课程,成绩;    FOR学生.学号=成绩.学号;    AND课程.课程编号=成绩.课程编号;    AND课程.课程名称="计算机网络";    ORDER BY成绩.成绩DESC
B、SELECT 学生.姓名.学生.系名.成绩.成绩JOIN学生,课程,成绩;    ON学生.学号=成绩.学号;    ON课程.课程编号=成绩.课程编号;    AND课程.课程名称="计算机网络";    ORDER BY成绩.成绩DESC
C、SELECT学生.姓名,学生.系名,成绩.成绩 FROM 学生,课程,成绩;    WHERE学生.学号=成绩.学号;    OR课程.课程编号=成绩.课程编号;    OR课程.课程名称="计算机网络";    ORDER BY 成绩.成绩 DESC
D、SELECT 学生.姓名,学生.系名,成绩.成绩FROM学生,课程,成绩;    WHERE 学生.学号=成绩.学号;    AND 课程.课程编号=成绩.课程编号;    AND 课程.课程名称="计算机网络";    ORDER BY成绩.成绩 DESC

答案D

解析 本题是一个多表连接查询的SQL语句,关键要注意表间连接条件的使用,如果使用超连接方式查询,则正确的语句格式为:
SELECT……
FROM<数据库表1>INNER JOIN<数据库表2>
ON<连接条件>
WHERE……
其中,INNER JOIN等价于JOIN,为普通的连接,在Visual FoxPro中称为内部连接;ON<连接条件>指定两个进行表连接的条件字段。
如果使用的是普通的连接方式,则只需在FROM短语中指定查询的数据表,各表名之间用逗号隔开,而各表之间的连接放在WHERE短语后面,设计两个连接条件时,用AND短语连接这两个条件。
转载请注明原文地址:https://kaotiyun.com/show/5jzp777K
0

最新回复(0)