List casesForCC = [ SELECT Work_Order__r.IOL_QuoteId__r.IOLF_NumeroCommissione__c FROM Case WHERE IOLE_Processo_di_Lavorazione__c != NULL AND Work_Order__c != NULL AND Work_Order__r.IOL_QuoteId__r.Owner.LastName = 'Piscozzi' ]; Set numeriCommissione = new Set(); for(Case c : casesForCC) { if(String.isNotBlank(c.Work_Order__r.IOL_QuoteId__r.IOLF_NumeroCommissione__c)) { numeriCommissione.add(c.Work_Order__r.IOL_QuoteId__r.IOLF_NumeroCommissione__c); } } List cases = [ SELECT Work_Order__r.IOL_QuoteId__r.IOLF_NumeroCommissione__c FROM Case WHERE IOLE_Processo_di_Lavorazione__c != NULL AND Work_Order__c != NULL AND Work_Order__r.IOL_QuoteId__r.IOLF_NumeroCommissione__c IN :numeriCommissione ]; List caseIds = new List(); for(Case c : cases) { caseIds.add(c.Id); } System.debug(caseIds.size());