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

Tham số có điều kiện của trình tạo truy vấn

Tôi nghĩ bạn cần điều kiện "và ở đâu" ở đây. Hoặc ở đâu có nghĩa là phù hợp với một hoặc một hoặc khác hoặc cả hai quy tắc. "Và ở đâu" sẽ chỉ hoạt động nếu cả hai quy tắc phù hợp.

Vì vậy, tôi khuyên bạn nên thử điều này:

$users = User::with('skills')
->with('skills')
->with('positions');
if($skills)
{
    $users->whereHas('skills', function($thisquery) use ($skills)
    {
       $thisquery->whereIn('name', $skills);
    });
 }

if($positions)
{
    $users->whereHas('positions', function($thisquery) use ($positions)
    {
         $thisquery->whereIn('name', $positions);
    });
}
$users = $users->get();


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL xử lý ORDER BY và LIMIT trong một truy vấn như thế nào?

  2. sẽ hiển thị trạng thái bảng hiển thị các hàng chính xác trong bảng?

  3. mysql CONCAT () NHƯ tên?

  4. cập nhật hàng loạt danh sách các giá trị từ danh sách id

  5. MySQL:Chọn tất cả các ngày trong một phạm vi ngay cả khi không có hồ sơ nào