回帖表Answers
帖子编号 回帖人
PKID      Ans_Man
1           bobo
1           rose用户表Users
User_Name User_Grade
bobo         1
rose         2等级表Grade
ID    Grade_Name
1         普通用户
2         版主
3         管理员要求Datatable中得到给PKID=1的帖子回帖人的等级信息
即DataTable的记录为
PKID Ans_Man  Grade_Name
1     bobo        普通用户
1     rose         版主
望大侠指点!

解决方案 »

  1.   

    select a.*, b.Grade_Name
    from
    Answers a join Users b
    on a.Ans_Man=User_Name
    join Grade c
    on b.User_Grade=c.ID
    where a.PKID=1
      

  2.   

    Select a.PKID,b.User_Name,c.Grade_Name from Answers a
    left join Users b
    on a.Ans_Man = b.User_Name
    inner join Grade c
    on b.user_grade = c.PKID
      

  3.   

    哦,忘了 where a.pkid = 1
      

  4.   

    --Answers
    declare @Answers table(PKID int,Ans_Man varchar(10))
    insert @Answers
    select '1','bobo' union all
    select '1','rose'--Users
    declare @Users table(User_Name varchar(10),User_Grade int)
    insert @Users
    select 'bobo','1' union all
    select 'rose','2'--Grade
    declare @Grade table(ID int,Grade_Name varchar(10))
    insert @Grade
    select '1','普通用户' union all
    select '2','版主' union all
    select '3','管理员'select a.*, c.Grade_Name
    from
    @Answers a join @Users b
    on a.Ans_Man=User_Name
    join @Grade c
    on b.User_Grade=c.ID
    where a.PKID=1
    /*
    PKID Ans_Man Grade_Name
    1 bobo 普通用户
    1 rose 版主
    */
      

  5.   

    /*
    更正笔误
    */--select a.*, b.Grade_Name
    --select a.*, c.Grade_Name
    from
    Answers a join Users b
    on a.Ans_Man=User_Name
    join Grade c
    on b.User_Grade=c.ID
    where a.PKID=1