registros query num_rows contar activerecord codeigniter

activerecord - query - select count codeigniter



Registro activo de CodeIgniter: obtenga el nĂºmero de filas devueltas (10)

Soy muy nuevo en CodeIgniter y Active Record en particular, sé cómo hacerlo bien en SQL normal, pero estoy tratando de aprender.

¿Cómo puedo seleccionar algunos datos de una de mis tablas y luego contar cuántas filas se devuelven utilizando la clase CodeIgniters Active Record?

Gracias, Tom.


Echa un vistazo a las funciones de resultados here :

$this->db->from(''yourtable''); [... more active record code ...] $query = $this->db->get(); $rowcount = $query->num_rows();


Esta también es una función muy útil si está buscando filas o datos con la condición afectada

function num_rows($table) { return $this->db->affected_rows($table); }


Este segmento de código para su modelo

function getCount($tblName){ $query = $this->db->get($tblName); $rowCount = $query->num_rows(); return $rowCount; }

Esto es para el control

public function index() { $data[''employeeCount'']= $this->CMS_model->getCount("employee"); $this->load->view("hrdept/main",$data); }

Esto es para ver

<div class="count"> <?php echo $employeeCount; ?> </div>

Este código se usa en mi proyecto y funciona correctamente.


Esto va para tu modelo:

public function count_news_by_category($cat) { return $this->db ->where(''category'', $cat) ->where(''is_enabled'', 1) ->count_all_results(''news''); }

Es un ejemplo de mi proyecto actual.

De acuerdo con la benchmarking esta consulta funciona más rápido que si hace lo siguiente:

$this->db->select(''*'')->from(''news'')->where(...); $q = $this->db->get(); return $q->num_rows();


Puedes hacer esto de dos maneras diferentes:

1. $this->db->query(); //execute the query $query = $this->db->get() // get query result $count = $query->num_rows() //get current query record. 2. $this->db->query(); //execute the query $query = $this->db->get() // get query result $count = count($query->results()) or count($query->row_array()) //get current query record.


Si solo necesita el número de filas en una consulta y no necesita los datos de fila reales, use count_all_results

echo $this->db ->where(''active'',1) ->count_all_results(''table_name'');


Solo tengo que leer el docs hijo!

$query->num_rows();


Y, si solo quieres obtener un recuento de todas las filas en una tabla

$table_row_count = $this->db->count_all(''table_name'');


$this->db->select(''count(id) as rows''); $this->db->from(''table_name''); $this->db->where(''active'',1); $query = $this->db->get(); foreach($query->result() as $r) { return $r->rows; }


function getCount(){ return $this->db->get(''table_name'')->num_rows(); }