Student(Sid,Sname) 学生表infos(Iid,Sid,Sage,Ssex) 学生资料表unions(uid,Sid,Uname) 学生会名单表查询结果学生姓名 课程名 学生会
  小明    数学   1
  小王    数学   1
  小张    物理   0
---------------------------------
以资料表为主表,查询所有学员的资料,并在结果中创建临时列(是学生会成员的为1,否则为0)

解决方案 »

  1.   


    我上面写错了,应该是这样:Student(Sid,Sname) 学生表infos(Iid,Sid,Sage,Ssex) 学生资料表unions(uid,Sid,Uname) 学生会名单表查询结果学生姓名 性别 学生会
      小明    男    1
      小王    男    1
      小张    女    0
    ---------------------------------
    以资料表为主表,查询所有学员的资料,并在结果中创建临时列(是学生会成员的为1,否则为0)
      

  2.   


    select a.Sname 学生姓名,你的表示课程名的字段 课程名,
    case when Uname isnull then 0 else 1 end as学生会
    from 学生表 a left join 你的课程名所在的表 b
    on a.sid=b.sid
    left join unions c on a.sid=c.sid
      

  3.   


    select a.Sname 学生姓名,b.Ssex 性别,
    case when Uname isnull then 0 else 1 end as学生会
    from 学生表 a left join infos b
    on a.sid=b.sid
    left join unions c on a.sid=c.sid
      

  4.   


    select Sname,Ssex,(case when uid is null then 0 else 1 end) as 学生会
    from Student a right join infos b on a.sid=b.sid left join unions c on a.sid=c.sid