辅导:查找一个表中存在而另一个表中不存在的记录
来源:优易学  2011-10-31 12:55:18   【优易学:中国教育考试门户网】   资料下载   IT书店
  学校每次考试要按上次考试成绩从高到低排列,学生按这个排列安排试室及座位。青年人网站提示但每次考试都有学生缺考或有新转学进来的学生,这部份学生不会出现在上面的成绩排列中。
  这段SQL代码就是找出这些学生,做相应处理。
  相关表:
  ClassList 学生编班表
字段意义 字段名称
学年 ClassYear
年级 Grade
班别 Class
学生编号 LearnNo
...... ......
  TestSeatList 考试座位安排表
字段意义 字段名称
考试编号 TestNo
年级 Grade
试室号 Room
座位号 Seat
学生编号 LearnNo
...... ......

  上面两个表通过LearnNo相关联,因为学生编号只有9位,而考试答题卡是10位的,所以TestSeatList中的LearnNO是在ClassList的LearnNo前面补"0"的,这里要用Substring把它截出来。
  select * from ClassList
  where ClassYear=2008 And Grade=2 And LearnNo not in(select Substring(LearnNo,2,9) from TestSeatList Where TestNO=200810 And Grade=2)
  Order by learnno

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训