本帖最后由 Tangkun306 于 2011-09-01 17:18:00 编辑

解决方案 »

  1.   

       我想把第一条查询语句中查出来的最后一列   14、15、1、16、3...  显示成下面这个  网络技术、 销售部、人力资源部、技术部、技术部、软件技术。  现在不会合并SQL。
      

  2.   

      select sr.id,sr.rtype,sr.movetime,sr.re,dp.name,st.uname,st.depart_id,dp2.name
      from tbl_staffremove as sr 
      inner join tbl_departMent as dp on sr.depart_id = dp.id 
      inner join tbl_staff as st on sr.staff_id = st.id  
      LEFT JOIN tbl_departMent AS dp2 ON dp2.depart_id=st.depart_id
       
    ?這樣
      

  3.   

    你写的两个sql语句都会连接,下面这个就不会了?
    你的第二个查询语句st.depart_id 取出来
    然后你的第一个和第二个再连接!
      

  4.   


    select sr.id,sr.rtype,sr.movetime,sr.re,dp.name,st.uname,st.depart_id 
    from tbl_staffremove as sr inner join tbl_departMent as dp 
    on sr.depart_id = dp.id inner join tbl_staff as st on sr.staff_id = st.id
    right join (select dp.name from tbl_staff as st1 left join tbl_departMent as dp1 on st1.depart_id =dp1.id) as c
    on c.name=dp.name
      

  5.   

    七楼的回答地很犀利。
    楼主可以查一下多表查询,比我们说的都好。select dp.name from tbl_staff as st left join tbl_departMent as dp on st.depart_id =dp.id
    总是感觉不必加as,别名还是叫a.b.c更简单,明了。向你这样虽有代表性,但很模糊。
      

  6.   

      哎 、其实很简单。我自己拼出来了。 只不过是再起一个别名而已 。
      select sr.id,sr.rtype,sr.movetime,sr.re,dp.name,st.uname,dp1.name
       from tbl_staffremove as sr 
       inner join tbl_departMent as dp on sr.depart_id = dp.id 
       inner join tbl_staff as st on sr.staff_id = st.id
       left join tbl_departMent as dp1 on st.depart_id = dp1.id   6楼得回答很贴近 。