Trong CakePHP 3, tôi đã có một mô hình gọi là Bài viết và một lĩnh vực được gọi là 'chủ đề', và tôi chạy vào một rào cản cố gắng lấy danh sách 100 chủ đề bài viết thường được sử dụng nhất.Làm thế nào để bạn sử dụng COUNT (*) với tìm ('danh sách') trong CakePHP 3?
dẫn SQL Các mã sau đây của chọn tất cả của các trường có thể và khôngCOUNT(*)
:
$articles->find('list', [
'keyField' => 'subject',
'valueField' => 'COUNT(*)'
])
->group('subject')
->order(['COUNT(*)' => 'DESC'])
->limit(100)
->toArray();
Sau đó, tôi nhớ "CakePHP’s ORM offers abstraction for some commonly used SQL functions.". Nhưng đoạn mã sau dẫn đến "Lỗi: Tên hàm phải là một chuỗi":
$countFunc = $this->find()->func()->count('*');
$articles->find('list', [
'keyField' => 'subject',
'valueField' => $countFunc
])
->group('subject')
->order([$countFunc => 'DESC'])
->limit(100)
->toArray();
$ this-> Zendesks-> find ('list', ['keyField' => 'company_id', 'valueField' => 'comment_id']) -> trong đó (['created_at> =' => $ month3Start, 'created_at <=' => $ month1End]) -> chọn (['company_id', 'comment_id' => $ this-> Zendesks-> find() -> func() -> count ('*')]) -> nhóm ('company_id '); Chỉ cần sao chép tác phẩm của tôi ở đây, có thể giúp người khác biết thêm chi tiết. và cảm ơn mã của bạn! –