На вашей модели:
$id = $this->db->get('users')->where("name", "John")->id;
$rows = $this->db->get('users')->where("id < ", $id)->num_rows();
return $rows;
Обратите внимание, как я использую «цепочечные методы», и для этого вам нужен PHP5, который является значением по умолчанию для CI 2.
Сначала вам нужнополучите идентификатор записи, которую нужно начать считать «в обратном направлении», которая является первой строкой, учитывая таблицу с именем users и фильтруемый столбец «name», а строка, которую вы хотите найти, имеет значение имени John.
Во второй строке будет указано количество строк, возвращенных запросом "где id <<em> число ", где число - это идентификатор, полученный в первом запросе.Может быть, вы даже можете связать обе строки.