sql >> Databáze >  >> RDS >> Mysql

codeigniter aktivní záznam získat dotaz a dotaz bez klauzule LIMIT

Můžete použít SQL_CALC_FOUND_ROWS získat počet řádků, které by byly vráceny sans-LIMIT . Všimněte si ,FALSE v vybrat čára. To říká CodeIgniter, aby se nepokoušel uniknout SELECT klauzule se zpětným zaškrtnutím (protože SQL_CALC_FOUND_ROWS není pole a CodeIgniter si to neuvědomuje).

$this->db
->select("SQL_CALC_FOUND_ROWS emp", FALSE)
->from('emp')
->join('empr', 'empr.b = empr.id', 'left')
->like('code', $code)
->limit($numrows, $start);

$q = $this->db->get();

Poté, co je tento dotaz spuštěn, musíme spustit další dotaz, abychom získali celkový počet řádků.

$query = $this->db->query('SELECT FOUND_ROWS() AS `Count`');
$data["totalres"] = $query->row()->Count;


  1. Pochopte skupinu podle klauzule v SQL Server - SQL Server / TSQL výukový program, část 130

  2. Vytvoření indexu na proměnné tabulky

  3. Jak vložit do stejné tabulky v MySQL?

  4. java.sql.SQLException:ORA-03115:nepodporovaný datový typ sítě nebo reprezentace