While I'm querying on account object based on several conditions from different object I'm getting the below error:
Maximum 2 semi join sub-selects are allowed .
The following the query which I'm using
select Id, Name, PersonHomePhone, PersonMobilePhone, Phone, PersonEmail, City__c from Account
where (RecordTypeId ='012280000000f14AAA' or RecordTypeId = '012280000006I5zAAE' or RecordTypeId = '012280000006I61AAE')
and Occupation__c='Office Staff'
and Id in (Select Contact__c From Vehicle_Relationship__c where Vehicle_ID__r.Class__c='C-Class' AND New_Used__c='New' AND Service_Advisor__r.Name='abcdef' )
and Id in(Select Contact__c from Lead__c where CAC_Lead_Status__c='New' )
and Id in(Select toRole__c From Account_Link__c where Sales_Representative__r.Name='abcdef' )
and Id in(Select Contact_Id__c From Campaign_Member__c where Campaign_ID__r.Name='abcdef' )
Why am I getting this error?