Use of group by and having condition-
$collection = $this->collection->create();
$collection->addFieldToFilter('mobile_number', $mobile);
$collection->addFieldToSelect('mobile_number');
$collection->getSelect()->columns(['count' => new \Zend_Db_Expr('COUNT(mob)')])->where(
new \Zend_Db_Expr('TIMESTAMPDIFF(MINUTE,created_time,NOW()) <= 5')
)->group('mob')->having('count >= ?', 1);
Fetch first item only-
$collection = $this->collection->create()->addFieldToFilter('mob', $mob)
->setOrder('id','DESC')
->setPageSize(1);
if (count($collection) == 1) {$item = $collection->getFirstItem();
}