Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да получите общия брой намерени редове, без да вземете предвид ограничението в PDO?

Само 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));

Приблизително толкова тежък за сървъра на базата данни, колкото еднократното запитване за всички записи, разбира се. За използване извън MySQL, тази заявка, разбира се, е по-добра от получаването на броя на редовете на всички записите:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Проблеми при четене/записване на UTF-8 данни в MySQL от Java с помощта на JDBC конектор 5.1

  2. mysql извлича година от формат за дата

  3. Размерът на реда е твърде голяма грешка в заявката за създаване на таблица в mysql

  4. pymssql.OperationalError:съобщение за грешка в DB-Lib 20009, сериозност 9

  5. Могат ли колоните на таблицата с външен ключ да бъдат NULL?