sql >> Database >  >> RDS >> Mysql

codeigniter active record opvragen en opvragen zonder de LIMIT-clausule

U kunt SQL_CALC_FOUND_ROWS om het aantal rijen te krijgen dat zou zijn geretourneerd zonder LIMIT . Let op de ,FALSE in de select lijn. Dit vertelt CodeIgniter om niet te proberen te ontsnappen aan de SELECT clausule met backticks (omdat SQL_CALC_FOUND_ROWS is geen veld, en CodeIgniter realiseert zich dat niet).

$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();

Nadat die query is uitgevoerd, moeten we nog een query uitvoeren om het totale aantal rijen te krijgen.

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


  1. Connectiviteit van de beschikbaarheidsgroep configureren

  2. mysql NULL-waarde in waar in CLAUSE

  3. PHP-bestand kan een deel van de code niet invoeren

  4. Wat is het verschil tussen VARCHAR en NVARCHAR in SQL-server - SQL Server / T-SQL-zelfstudie, deel 32