TSL语言基础 > SQL基础到TS-SQL > TS-SQL进阶

TS-SQL和多重嵌套查询    

  •   在前边的章节中,我们学习了多表的联接,但是有时候我们还是需要使用到多重嵌套查询,举一个例子:
      假定B还是英语成绩结果集,D则是上课出勤记录,我们要返回一个结果集,在B的基础上增加一列,是该学生对应的缺课记录。
      我们假定D的结构为:
      学号课程名课程时间缺课
      01   英语  2012-3-1  No
      01   语文  2012-3-1  Yes
      01   英语  2012-3-2  No
      02   .......................................
      似乎我们可以如下写:
      R:=select *,Select ["课程时间"],["缺课"] from D where ["学号"]=["学号"] and ["缺课"]="Yes" end as "出勤记录" from B end;
      这个时候,我们发现了一个问题,在字查询中,我们无法直接用["学号"]来标示B和D的学号字段,而这个时候,由于不是使用Join,所以也无法使用[1].["学号"]的模式来识别字段来源。这时,子查询不存在Join的第一个第二个结果集的概念,但存在上一级结果集的概念(例如相对于对D查询的子查询而言,B结果集是D结果集查询的上层结果集)。
      为了解决这个上下级的关系,TS-SQL加入了RefsOf关键字。
内容