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

CakePHP Số lượng phân trang không khớp với truy vấn?

Đó là do nhóm group by Tôi đã tìm thấy một cách giải quyết. Tôi muốn đặt liên kết nhưng tôi đã làm mất nó, vì vậy tôi sẽ đăng mã:

public function paginateCount($conditions = null, $recursive = 0, $extra = array()) {
    $parameters = compact('conditions', 'recursive');
    if (isset($extra['group'])) {
        $parameters['fields'] = $extra['group'];
        if (is_string($parameters['fields'])) {
            // pagination with single GROUP BY field
            if (substr($parameters['fields'], 0, 9) != 'DISTINCT ') {
                $parameters['fields'] = 'DISTINCT ' . $parameters['fields'];
            }
            unset($extra['group']);
            $count = $this->find('count', array_merge($parameters, $extra));
        } else {
            // resort to inefficient method for multiple GROUP BY fields
            $count = $this->find('count', array_merge($parameters, $extra));
            $count = $this->getAffectedRows();
        }
    } else {
        // regular pagination
        $count = $this->find('count', array_merge($parameters, $extra));
    }
    return $count;
}

Tôi đã thêm nó vào app_model và nó hoạt động tốt đối với tôi :)

Hy vọng điều này sẽ giúp

Đã chỉnh sửa: Tôi đã tìm thấy liên kết =)

http://wiltonsoftware.com/posts / view / custom-group-by-pagination-and-a-features-field



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao thứ tự đánh giá cho các biểu thức liên quan đến biến người dùng không được xác định?

  2. Mysql Dayofyear trong năm nhuận

  3. So sánh giữa Plugin MySQL Clone và Xtrabackup

  4. Hiển thị dữ liệu biểu đồ từ cơ sở dữ liệu

  5. Tại sao EF lại tạo truy vấn phụ cho một truy vấn nhỏ?