2016-06-24 45 views
0

我需要抓取行數爲user s的行,其中存在item的行。這是我到目前爲止的代碼:Laravel 4 - 選擇行數大於0的連接表中的行數

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

如何添加一個WHERE條件將僅選擇user S作至少一個item

+0

你可以試試這個,看看會發生什麼? '$ users = DB :: table('users') - > join('orders','orders.user_id','=','users.id') - > join('items',' (DB:raw('count(items)> 0')) - > get();' –

回答

1

您不必添加額外條件。該查詢將僅爲您有訂單和相關項目的用戶返回結果。如果您只想返回具有相關項目的用戶,則可以刪除joinorders表格(儘管我不知道爲什麼表格中的user_id而不是orders表格中的user_id)。

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

噢..呃..我感謝幫助 - 謝謝! – Shane