三个表BBSUsers(UID,UserName),BBSTopic(TID,TUID,TTopic,TClickCount),BBSReply(RUID,RTID,RTopic)
BBSUsers的UID是主键,BBSTopic的TUID和BBSReply的RUID是外键.
BBSTopic的TID是主键,BBSReply的RTID是外键要查询主贴表(BBSTopic)中某一个贴子(TID=1)的发贴人姓名,以及跟贴表(BBSReply)中的所有跟贴人的姓名.小弟先在此谢过了!

解决方案 »

  1.   

    select 
      a.UserName,c.RTopic 
    from 
      BBSUsers a,BBSTopic b,BBSReply c
    where 
      a.uid=b.tuid
    and 
      b.tid=c.rtid
    and a.tid=1
      

  2.   

    select 
      a.UserName,c.RTopic 
    from 
      BBSUsers a join BBSTopic b on a.uid=b.tuid join BBSReply c
    on
      b.tid=c.rtid
    where a.tid=1select 
      a.UserName,c.RTopic 
    from 
      BBSUsers a join BBSTopic b on a.uid=b.tuid join BBSReply c
    on
      b.tid=c.rtid
    and a.tid=1
      

  3.   

    SELECT u.username[发贴人姓名]
     FROM BBSTOPIC T
    LEFT JOIN BBSUSERS UON 
      T.TUID = U.UID
    WHERE 
      TUID = 1
      
      

  4.   

    fredrickhu老大, 谢谢你这么晚还回我的贴.
    不过还要显示跟贴表的姓名呀, 模拟一下结果:主贴表姓名  跟贴表姓名
      leaf      flower
      leaf      andy
      leaf      tom
      Mike      John
      Mike      andy
      

  5.   

    --三个表BBSUsers(UID,UserName),BBSTopic(TID,TUID,TTopic,TClickCount),BBSReply(RUID,RTID,RTopic) 
    --BBSUsers的UID是主键,BBSTopic的TUID和BBSReply的RUID是外键. 
    --BBSTopic的TID是主键,BBSReply的RTID是外键 
    --
    --要查询主贴表(BBSTopic)中某一个贴子(TID=1)的发贴人姓名,以及跟贴表(BBSReply)中的所有跟贴人的姓名. --第1步
    select  TID,USerName as 发贴人姓名
    into temptab1
    from BBSUser inner join BBSTopic
    on BBSUser.UID=BBSTopic.TUID--第2步
    select RTID,UserName as 跟贴人姓名
    into temptab2
    from BBSUser inner join BBSReply
    on BBSUser.UID=BBSReply.RUID--第3步
    select 发贴人姓名,跟贴人姓名
    from temptab1 inner join temptab2
    on temptab1.TID=temptab2.RTID--第4步
    drop table temptab1
    drop table temptab2--被自己用很笨的方式解决了, 不过还是谢谢各位!