在mysql中我想做这样的查询功能根据不同的情况查询不同的表: 
select * 
from TMEMBER_BASIC t1 
IF(t1.MEM_TYPE=0, 
LEFT JOIN 
(SELECT COUNT(0) AS RECOMMENTCNT,MEMBER_ID 
FROM TPERSON_RECOMM 
GROUP BY MEMBER_ID 
)T7 
ON T7.MEMBER_ID=t1.MEMBER_ID, 
LEFT JOIN 
(SELECT COUNT(0) AS RECOMMENTCNT,tjob.MEMBER_ID as MEMBER_ID 
FROM tperson_recomm,tjob 
WHERE tjob.JOB_SEQ=tperson_recomm.JOB_SEQ 
GROUP BY tjob.JOB_SEQ 
)T10 ON T10.MEMBER_ID=t1.MEMBER_ID 

但是报错,请问应该怎么写 

解决方案 »

  1.   

    select *  
    from TMEMBER_BASIC t1 LEFT JOIN  
    (SELECT COUNT(0) AS RECOMMENTCNT,MEMBER_ID  
    FROM TPERSON_RECOMM  
    GROUP BY MEMBER_ID  
    )T7  
    ON T7.MEMBER_ID=t1.MEMBER_ID
    where t1.MEM_TYPE=0
    union allselect *  
    from TMEMBER_BASIC t1 (SELECT COUNT(0) AS RECOMMENTCNT,tjob.MEMBER_ID as MEMBER_ID  
    FROM tperson_recomm,tjob  
    WHERE tjob.JOB_SEQ=tperson_recomm.JOB_SEQ  
    GROUP BY tjob.JOB_SEQ  
    )T10 ON T10.MEMBER_ID=t1.MEMBER_ID 
    where t1.MEM_TYPE<>0