You need to sign in to do that
Don't have an account?

Child1 to parent to child2 SOQL query
Hi all,
Currently i am on a child1 and i want to write a query anyone know how to do it?
Currently i am on a child1 and i want to write a query anyone know how to do it?
Suppose Child1 is Contact1(whose Id is Id1), Child2 is Contact2 and Parent is Account.
List<Contact> listContact1=[SELECT Id,AccountId FROM Contact WHERE Id=Id1];
Set<Id> accIdSet=new Set<Id>();
for(Contact itr:listContact){
accIdSet.add(itr.AccountId);
}
List<Contact> listContact2=[SELECT Id FROM Contact WHERE AccountId IN accIdSet];
In this set you will get Ids of Contacts that are children of our Account.From this you can get your Child2.
I hope you find the above solution helpful. If it does, please mark as Best Answer to help others too.
Thanks and Regards,
Deepali Kulshrestha
Suppose Child1 is Contact1(whose Id is Id1), Child2 is Opportunity and Parent is Account.
String conId='0032v00002iNNsB';
List<Contact> conList = new List<Contact>();
conList=[SELECT Id,AccountId FROM Contact where Id=:conId];
Set<Id> sid=new Set<Id>();
if(conList.size()>0){
for(Contact con :conList){
sid.add(con.AccountId);
}
}
List<Opportunity> oppList = new List<Opportunity>();
oppList=[SELECT Id FROM Opportunity WHERE AccountId IN:sid];
system.debug(oppList);
if this answer is suitable for you please choose the best aswer,
Thanks
sfdc x-man