就是输出的时候可以输出作者的昵称而不是用户名
表cdb_threads如下字段
author(作者可与username关联)、authorid(作者id)、lastposter(最后回复人可与username关联)
用户表cdb_members如下字段
uid(与作者id一样)、username(与作者一样)
第三张表用户信息表cdb_memberfields如下字段
uid(与作者id一样)、nickname(用户昵称)要输出:作者昵称 最后回复者昵称

解决方案 »

  1.   

    一条SQL同时输出author、lastposter的昵称?
      

  2.   

    试试:
    select a.author as f1,a.authorid as f2,c.nichname as f3 from cdb_threads as a,cdb_members as b,cdb_memberfields as c where a.lastposter=b.username and a.authorid=b.auid and b.uid=c.uid;
      

  3.   

    SELECT n1.nickname as authorname,n2.nickname as lastposter FROM cdb_threads as ct
    LEFT JOIN cdb_memberfields as n1 ON n1.id=ct.author
    LEFT JOIN cdb_memberfields as n2 ON n2.id=ct.lastposter
    ORDER BY 回复时间字段 DESC 
    这样子应该可以
      

  4.   

    第一个作者的昵称我能查出来了因为在第一张表里有uid可以直接关联查到
    可是哪个最后回复人只有用户名没有uid
    所以我想可能要先查他的uid在查昵称所以我不知道该怎么写了
    现在还是不行!请高手继续发言!!谢谢大家
      

  5.   

    select cdb_threads.author,cdb_memberfields.nickname from cdb_threads inner join (cdb_members inner join cdb_memberfields on cdb_members.uid = cdb_memberfields.uid ) on cdb_threads.lastposter = cdb_members.username