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

Làm thế nào để sử dụng JOIN trong Yii2 Active Record cho mô hình quan hệ?

Sử dụng joinWith . Để biết thêm xem

Ví dụ:đối với mã trường hợp của bạn như vậy:

Books::find()
    ->joinWith(['reviews' => function ($q) {
        $q->select(['COUNT(*) as cnt']);
    }])
    ->orderBy(['cnt' => 'DESC'])
    ->all();

CHỈNH SỬA:Tôi tìm thấy giải pháp tốt hơn.

Books::find()
    ->joinWith(['reviews'])
    ->select(['*', 'COUNT(reviews.*) as cnt'])
    ->groupBy('RELATION_FIELD(Example: reviews.book_id)')
    ->orderBy(['cnt' => 'DESC'])
    ->all();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ví dụ về UTC_TIMESTAMP () - MySQL

  2. Nhận ngày gần nhất từ ​​bảng MySQL

  3. PDO:Kết nối cơ sở dữ liệu trên trang web từ xa

  4. Thư viện MySQL C API cho iPhone

  5. Câu lệnh SQL Lỗi trong mã java sử dụng Intellij và DB Navigator