简单的left join应该可以满足你的需求select ch_app.*, ch_user.username,ch_user.realname from ch_app left join ch_app
where ch_app.uid = ch_app.uid
 

解决方案 »

  1.   


    谢谢你的回答,我的问题是如何能同时取出三个uid所对应的用户名(uid,manager,channel_id 这里是对应的三个用户id
      

  2.   

    select ch_app.*, A.username,A.realname 
    B.username,B.realname,C.username,C.realname
    from ch_app , ch_user A, ch_user B , ch_user C,
    where ch_app.uid = A.uid and ch_app.manager = B.uid and ch_app.channelId = C.uid
      

  3.   


    有个逗号的问题,下面这个可以,查询出来的最后六个字段分别是你要的,你可以在查询语句中给你需要的列别名select ch_app.*, A.username ,A.realname ,
    B.username,B.realname,C.username,C.realname
    from ch_app , ch_user A, ch_user B , ch_user C
    where ch_app.uid = A.uid and ch_app.manager = B.uid and ch_app.channel_Id = C.uid
      

  4.   


    sql是可以执行的,但是这里是用的where,奥斯不太合适,我觉得应该是以联表方式比较好,要有一个主表,这样能确保取出来的数据不为空
      

  5.   

    select ch_app.*, A.username ,A.realname ,
    B.username,B.realname,C.username,C.realname
    from ch_app left join ch_user A on ch_app.uid = A.uid 
    left join ch_user B on ch_app.manager = B.uid 
    left join ch_user C on ch_app.channel_Id = C.uid