sql >> Database >  >> RDS >> Mysql

Hoe het totaal gevonden rijen te krijgen zonder rekening te houden met de limiet in PDO?

Alleen MySQL AFAIK:

$r=$db->prepare("SELECT SQL_CALC_FOUND_ROWS * FROM locations WHERE area=:area LIMIT $start,10");
$r->execute($fields);

var_dump($r->fetchAll());

var_dump($db->query('SELECT FOUND_ROWS();')->fetch(PDO::FETCH_COLUMN));

Ongeveer net zo zwaar voor de databaseserver als het eenmalig opvragen van alle records natuurlijk. Voor niet-MySQL-gebruik is deze query natuurlijk beter dan het aantal rijen van allen te krijgen de records:

$r=$db->prepare("SELECT COUNT(*) FROM locations WHERE area=:area");
$r->execute($fields);
$count = $r->fetch(PDO::FETCH_COLUMN);
echo $count;



  1. Microsoft Access gebruiken met Power BI

  2. Somwaarden van multidimensionale array per sleutel zonder lus

  3. SQL commando niet juist afgesloten?

  4. Hoe te repareren "ALTER TABLE SWITCH-instructie is mislukt"