| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 596 人关注过本帖
标题:谁帮忙解决一下!谢谢!
取消只看楼主 加入收藏
张汉卿
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2010-4-4
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:1 
谁帮忙解决一下!谢谢!
在学生信息表S中检索每一门课程成绩都大于等于80分的学生学号姓名性别
SELECT     SC.学号, S.姓名, S.性别
FROM         S INNER JOIN
                      SC ON S.学号 = SC.学号
WHERE     EXISTS
                          (SELECT     学号, 课程号, 成绩
                            FROM          SC AS SC_1
                            WHERE      成绩 >= 80 AND S.学号 =SC.学号)和 下面这个有什么不同啊,为什么检索出来的结果不一样啊,EXISTS    NOT EXISTS 是相反的意思  结果应该一样啊   
SELECT     SC.学号, S.姓名, S.性别
FROM         S INNER JOIN
                      SC ON S.学号 = SC.学号
WHERE  NOT EXISTS   
                          (SELECT     学号, 课程号, 成绩
                            FROM          SC AS SC_1
                            WHERE      成绩 < 80 AND  S.学号 = SC.学号)
搜索更多相关主题的帖子: 姓名 80分 课程 
2010-04-09 21:35
张汉卿
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2010-4-4
收藏
得分:0 
回复 3楼 MIQIKing
检索全部学生都选修的课程的课程号和课程名   (数据表C 是课程数据表   S  是 学生基本信息表  SC  是学生选课数据表)
SELECT 课程号,课程名  FROM  C
   WHERE  NOT  EXTSTS
           (SELECT * FROM S
           WHERE  NOT  EXTSTS
                (SELECT  *  FROM SC
                    WHERE SC.学号=S.学号  AND  SC.课程号=C.课程号))   
    我不明白这是一个什么样的逻辑 请你帮我解释一下。谢谢!
2010-04-10 10:05
快速回复:谁帮忙解决一下!谢谢!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031975 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved