表1 UserQusetion 数据如下
 
Questionid Title   QusContent QusUserid  AnsUserid InnerDate Subject
 2   气候变暖 大气气候变暖      1       2     2012-12-01 地理
 3       1+2=?      不知道答案       3        4     2012-12-01 数学
 4       1/2=?      不知道答案       1        3      2012-12-01 数学Questionid 自定增长ID
TITLe 问题标题
QuesContent 问题内容
QusUserId  提问人ID
AnsUserid  回答人ID
InnerDate  插入时间
Subject    学科
表2 User  数据如下Userid  UserName UserStateId
1        小明   1
2  小刚     1
3        小红     1
4        小李     1
5        小赵     1
6        小关     1
7        小张     1表3  UserAttribute ID  UserId   photo
 1    1       /img/1.jpg
 2    2       /img/4.jpg
 3    3       /img/5.jpg
 5    4       /img/8.jpg这里 User表与UserQusetion 表的关系是 UserId=QusUserid  UserId=AnsUserid 
User表与UserAttribute 的关系是 UserId=UserId
根据sql语句得到一下数据
Questionid Title  QusContent QusUserid QUserName QImg AnsUserid AUserName AImg InnerDate Subject
 2  气候变暖   大气气候变  1   小明   /img/1.jpg     2     小刚     /img/4.jpg 2012-12-01 地理
 3       1+2=?      不知道答案       3        小红   /img/5.jpg       4       小李     /img/8.jpg 2012-12-01 数学
 4       1/2=?      不知道答案       1        小明   /img/1.jpg       3       小红     /img/5.jpg 2012-12-01 数学
 
sql

解决方案 »

  1.   

    select a.Questionid,a.Title,a.QusContent,a.QusUserid,b.UserName,c.photo as QImg,
    a.AnsUserid,b.UserName,c.photo as AImg InnerDate, Subject   
    from UserQusetion a,Questionid b ,UserAttribute c
    where a.QusUserId = b.Userid
    and b.Userid = c.UserId
    and a.AnsUserId = c.UserId
      

  2.   

    select a.Questionid,a.Title,a.QusContent,a.QusUserid,b.UserName,c.photo as QImg, a.AnsUserid,b.UserName,c.photo as AImg InnerDate, Subject    
    from UserQusetion a
    inner join Questionid b on a.QusUserId = b.Userid 
    inner join UserAttribute c on b.Userid = c.UserId and a.AnsUserId = c.UserId
      

  3.   


    select a.Questionid,a.Title,a.QusContent,a.QusUserid,b.UserName,c.photo as QImg,
    a.AnsUserid,c.UserName,c.photo as AImg ,InnerDate, Subject   
    from UserQusetion a left join [User] b 
    on a.QusUserId = b.Userid
    left join 
    (select a.userid,b.username,a.photo
    from UserAttribute a,[User] b where a.Userid = b.UserId) c 
    on a.AnsUserid = c.UserId
    /*
    Questionid,Title,QusContent,QusUserid,UserName,QImg,AnsUserid,UserName,AImg,InnerDate,Subject
    2,气候变暖,大气气候变暖,1,小明,/img/4.jpg,2,小刚,/img/4.jpg,2012-12-01 00:00:00.000,地理
    3,1+2=?,不知道答案,3,小红,/img/8.jpg,4,小李,/img/8.jpg,2012-12-01 00:00:00.000,数学
    4,1+2=?,不知道答案,1,小明,/img/5.jpg,3,小红,/img/5.jpg,2012-12-01 00:00:00.000,数学(3 行受影响)