Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm thế nào để có được tổng số hàng được tìm thấy mà không cần xem xét giới hạn trong PDO?

MySQL only 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));

Tất nhiên là nặng đối với máy chủ cơ sở dữ liệu như truy vấn một lần cho tất cả các bản ghi. Đối với việc sử dụng không phải MySQL, truy vấn này tất nhiên sẽ tốt hơn khi nhận được số hàng của tất cả các bản ghi:

$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. SonarQube:Làm cách nào để giảm kích thước của Measure_data.ibd?

  2. Hiệu suất đếm Mysql trên các bảng rất lớn

  3. Cách tốt nhất để thực hiện tìm kiếm có trọng số trên nhiều trường trong mysql?

  4. Có cách nào để chọn từ bảng MySQL nơi một trường kết thúc bằng ký tự / số nhất định không?

  5. Thư viện không được tải:@ rpath / libmysqlclient.21.dylib Lý do:không tìm thấy hình ảnh Lỗi di chuyển Django sử dụng trình điều khiển DB mysqlclient và MySQL 8 với macOS