我有2个表:
表1:学生信息编号 姓名 性别
001  张三 男
002  李四 女
表2:活动信息活动名称  队员A  队员B   队员C 队员D
活动A     001    003     007   009
活动B     002    003     006   007
.....
现在需要生成一个活动信息,学生编号用姓名代替
活动A    张三   王五 。
活动B    李四   如何写SQL语句得到上述结果?请大家帮帮忙,谢谢!

解决方案 »

  1.   

    select  活动名称,队员A=select  姓名  from 表1 where 编号=队员A,、、、、、
      

  2.   


    select a.activeName,b.name as Aname,c.name as Cname,d.name as Dname,e.name as Ename
    from [Active] a join student b on a.colA = b.id
                    join student c on a.colB = c.id
                    join student d on a.colC = d.id
                    join student e on a.colD = e.id
      

  3.   


    这条语句在ACCESS数据库中提示语法错误,不知是什么原因?
      

  4.   

    只有一个JOIN是正确的,多个JOIN就报错
      

  5.   

    那就用笨办法select Active,activeName,(select name from student where colA=Active.id) colA
    ,(select name from student where colB=Active.id) colB
    ,(select name from student where colC=Active.id) colC
    ,(select name from student where colD=Active.id) colD
     from [Active]
      

  6.   

    select a.activeName,b.name as Aname,c.name as Cname,d.name as Dname,e.name as Ename
    from [Active] a join student b on a.colA = b.id
                    join student c on a.colB = c.id
                    join student d on a.colC = d.id
                    join student e on a.colD = e.id
      

  7.   

    select a.activeName,b.name as Aname,c.name as Cname,d.name as Dname,e.name as Ename
    from [Active] a join student b on a.colA = b.id
                    join student c on a.colB = c.id
                    join student d on a.colC = d.id
                    join student e on a.colD = e.id