Конечно, это сложно (по-вашему):)
В зависимости от результатов вы можете сделать следующее:
$agency_data = $this->Realtor->find('list',array(
'conditions'=>array('business_name'=>$realtor_settings['Realtor']['business_name']),
'fields'=>array('num', 'num'),
'recursive'=> -1
));
$agency_data; //this already contain array of id's
Метод 2 - создание подзапроса, есть два способа строгойи не так строго :) Первое, что вы можете увидеть здесь (поиск по Подзапросам ).
Другой вариант - иметь следующий параметр условий:
$this->Realtor->find('all', array('conditions'=>array('field in (select num from realtors where business_name like "'.$some_variable.'"))));
Конечно, будьте осторожны с $ some_variable в подзапросе.Вы должны избежать этого - используйте, например, класс Sanitize.