2017-12-29 31 views
0
사이 Laravel 웅변과 하위 쿼리를 만드는 방법

안녕하세요 모두 내가 Laravel 개발에 새로운 오전과 내가 예를 들어, 나는이 쿼리를 실행하려면, 두 테이블 사이에 하위 쿼리를 만드는 방법에 대해 궁금 :두 테이블

SELECT * FROM `contracts` 
WHERE `trainer_id` = '1' OR id IN (
    SELECT `contract_id` FROM `trainees` 
    WHERE `user_id` = '1' 
) 

을 내가 원하는대로, 당신의 모델이 당신이 원하는 것을 달성하기 위해 다음과 같은 구문을 사용할 수 있습니다 계약라는 것을 가정 Laravel 웅변

+0

당신은 시도한 larvel 코드를 사용하여 Reletionship : https://laravel.com/docs/5.5/eloquent-relationships – Vladimir

+1

을 사용할 수 있습니다. 여기에있는 사람들이 오류를 찾아서 수정할 수 있도록 도와줍니다. –

+0

지금까지 시도한 것은 무엇입니까? – MCMXCII

답변

4

에서 그것을 작성하는 방법을 알고 싶어 나는 그것을 테스트하고 그것을 잘 작동합니다 :

Contracts::where('trainer_id', '1') 
    ->orWhere(function ($subquery) { 
     $subquery->whereIn('id', function ($query) { 
      $query->select('contract_id') 
       ->from('trainees') 
       ->where('user_id', '1'); 
     }) 
    })->get(); 
+0

정말 고마워요. –