SELECT a.*,c.* FROM w_sys_threshold a 
left join 
w_alarm_condition c on a.condition_id = c.condition_id  
JOIN s_role_dataprivilege d on d.data_priv_id = a.server_id 
JOIN s_user_role r on d.role_id = r.role_id and r.user_id = 1  
WHERE catalog_id = 2这里一个user对应了两个role 两个role里面有重复的server_id ,所以导致结果有重复的行,
不想把a ,c 两个表的字段在结果中指明,因为太多了。
各位大神!joinoracle