请参考http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=6420

解决方案 »

  1.   

    这个faq我看了,但是和我这个不太一样啊。没有我这个复杂。我想要的是select a.project_id b.proj_state,c,state_name from proj_info as a ,proj_state as b , state_info as c where a.cust_id = '1' and a.proj_id = b.proj_id and b.state_id in (select max(proj_state.proj_state) from proj_state,proj_info where proj_state.proj_id = proj_info.proj_id and proj_info.cust_id = '1')
    注意in 后面的语句,因为mysql 不支持这种写法。能用mysql的写法告诉我如何做吗。
      

  2.   

    怎么没人坑声啊,都不会吗,csdn里面没有一个高手?????
      

  3.   

    多表联合与MAX()结合的复杂查询
    http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=78128
      

  4.   

    555,我这个语句其实没有那么复杂。其实我select max(b.proj_id) from proj_state as b就可以了.但是我不想用id来显示数据,想到state_info中把对应的中文名称拿来。怎么写????我做的时候state_id 取得正确,但是名称却是从state_info中随便取出来的一个数据。