i have this custom collection which is taking much time to load, so want to change into sql query how can I achieve it?
$delayedcollectioncount = Mage::getModel("customer/customer")
->getCollection()
->addAttributeToSelect('firstname, entity_id')
->addAttributeToFilter('grisk_college_new_id', array('in' =>$college))
->addFieldToFilter('group_id', array('in' => array(4,5)))
->addAttributeToFilter('assigned_campus_manager', array('null' => true), 'left')
->addAttributeToFilter('physical_verify', array('null' => true), 'left')
->addFieldToFilter('grisk_pv_upload_date', array('lt' => date("Y-m-d H:i:s", strtotime($configValue))))
->addAttributeToSort('grisk_pv_upload_date', 'DESC')
->count();
getSizeactually runs one single query. and retrieve one single result. the only time you would save would be from bypassing the query builder. But honestly you don't want to do that since the customer model is and EAV model. This means it joins some tables in order to filter by attributes. Writing it as a query increases your error chances significantly. – Marius Apr 24 '17 at 14:31