VF习题,SQL语句

设有学生和选课两个关系,查询选修课程号为“101”课程得分最高的同学,是___Aselect学号,姓名from学生,选课where学生.学号=选课.学号and成绩>=al... 设有学生和选课两个关系,查询选修课程号为“101”课程得分最高的同学,是___
A select 学号,姓名 from 学生,选课 where 学生.学号=选课.学号 and 成绩>=all(select 成绩 from 选课 where 课程号=“101”
B select 学号,姓名 from 学生,选课 where 学生.学号=选课.学号 and 课程号=“101” and 成绩>=all(select 成绩 from 选课 where 课程号=“101”

<逻辑表达式>应是 研究生导师 and 性别=“女” 为什么不是研究生导师=.T.
求详解!!
展开
 我来答
快情签10
2013-08-08 · TA获得超过293个赞
知道小有建树答主
回答量:197
采纳率:0%
帮助的人:179万
展开全部
答安B是正确的,A的错误:all()里面得到了101课程的所有分数集合,假设101最高成绩是95,那么这一句的结果是只要学生的学号相等,并且成绩大于95的就查询出来,这就导致了如果某个学生的102课程成绩是96分也会被查询出来,所以错了。答案B加了这个限制,所以就正确了。

研究生导师是个逻辑型字段,所以 研究生导师 and 性别=“女” 和 研究生导师=.T. and 性别=“女” 这两种用法都是正确的。 因为如果研究生导师的值是.t. 则 研究生导师 和 研究生导师=.T.两者结果都.t.,而如果研究生导师的值是.f. 则 研究生导师 和 研究生导师=.T.两者结果都.f.,所以这二者等价的,一般用第一种,用第二种感觉画蛇添足。
chen_hongyang
2013-08-08 · TA获得超过5447个赞
知道大有可为答主
回答量:2790
采纳率:91%
帮助的人:867万
展开全部
B
select 学号,姓名 from 学生,选课 where 学生.学号=选课.学号 and 课程号=“101” 这里保证 选修课程号为“101”

<逻辑表达式>应是 研究生导师 and 性别=“女” 为什么不是研究生导师=.T.
什么意思?
追问
后面不是有一个课程号=“101”,为什么还需要一个。

教师表T,查询“是研究生导师的女老师”信息,那么SQL语句"SELECT *FROM T WHERE 中的 应是 研究生导师 and 性别=“女” 为什么不是研究生导师=.T.and 性别=“女”
追答
例如:课程号 101 和 102 都有最高分100分的,前面没有课程号 = '101' 判断的话就会把最高分100分的课程号 101 和 102 都搜索出来

应是 研究生导师 and 性别=“女” 是对的,应该是 老师类型 = 研究生导师 and 性别=“女”
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式