2016-06-24 3 views
0

item이있는 user의 행을 가져와야합니다. 여기 내 코드는 지금까지 있습니다 :Laravel 4 - 0보다 큰 조인 된 테이블의 행 개수를 선택하십시오

$users = DB::table('users') 
    ->join('orders', 'orders.user_id', '=', 'users.id') 
    ->join('items', 'items.user_id', '=', 'users.id'); 

가 어떻게은 적어도 하나의 itemuser의를 선택하는 경우 조건을 추가하는 방법은 무엇입니까?

+0

시도해보고 결과를 확인할 수 있습니까? ('orders', 'orders.user_id', '=', 'users.id') -> join ('items', '사용자') '$ users = DB :: table ('users') - (DB :: raw ('count (items)> 0')) -> get(); ' –

답변

1

추가 조건을 추가 할 필요가 없습니다. 쿼리는 관련 주문 및 항목이있는 사용자에 대해서만 결과를 반환합니다. 관련 항목이있는 사용자 만 반환하려는 경우 orders 테이블 대신 items 테이블에 user_id이 표시되는 이유를 모르겠지만 orders 테이블로 join을 삭제할 수 있습니다.

$users = DB::table('users')->join('items', 'items.user_id', '=', 'users.id'); 
+0

아 .. 이런 .. 도움에 감사드립니다 - 감사합니다! – Shane

관련 문제