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

Symfony 2:INNER JOIN trên bảng không liên quan với trình tạo truy vấn học thuyết

Hôm nay tôi đang làm việc với nhiệm vụ tương tự và nhớ rằng tôi đã mở vấn đề này. Tôi không biết nó hoạt động từ phiên bản học thuyết nào nhưng ngay bây giờ bạn có thể dễ dàng tham gia các lớp con trong ánh xạ kế thừa. Vì vậy, một truy vấn như thế này đang hoạt động mà không gặp bất kỳ sự cố nào:

$query = $this->createQueryBuilder('c')
        ->select('c')
        ->leftJoin('MyBundleName:ChildOne', 'co', 'WITH', 'co.id = c.id')
        ->leftJoin('MyBundleName:ChildTwo', 'ct', 'WITH', 'ct.id = c.id')
        ->orderBy('c.createdAt', 'DESC')
        ->where('co.group = :group OR ct.group = :group')
        ->setParameter('group', $group)
        ->setMaxResults(20);

Tôi bắt đầu truy vấn trong lớp cha của mình đang sử dụng ánh xạ kế thừa. Trong bài viết trước của tôi, đó là một điểm khởi đầu khác nhưng cùng một vấn đề nếu tôi nhớ đúng.

Bởi vì đó là một vấn đề lớn khi tôi bắt đầu vấn đề này, tôi nghĩ nó cũng có thể thú vị đối với những người khác không biết về nó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PDO tương đương với mysql_num_rows hoặc mssql_num_rows

  2. Chuyển từ MySQL 5.7 sang MySQL 8.0 - Những điều bạn nên biết

  3. Nhận từ cơ sở dữ liệu nhưng chỉ kéo dài 30 ngày

  4. Nhập kho mysql 8GB mất nhiều thời gian

  5. Tự động đóng kết nối db trong php?