2015-06-09 53 views
0

我被困在重寫mysql查詢laravel雄辯。轉換MySQL到laravel 5雄辯(左加入選擇)

LEFT JOIN `products_options` ON `products_options`.`id` = (
     SELECT products_options.id FROM products_options WHERE 1 
     AND products_options.product_id = products.id 
     AND products_options.color = $color 
    ) 

任何幫助?

+0

我建議你使用關係和急切的加載。 – Inurosen

+0

這看起來不像完整的查詢。 – ceejayoz

+0

該查詢正在連接兩個相同的表? –

回答

1

要複製該查詢使用下面的

$products = DB::table ('product_options') 
    ->leftJoin ('products', 'product_options.product_id', '=', 'products.id') 
    ->where('product_options.product_id', '=', 'products.id') 
    ->where('product_options.color', '=', $color)->get(); 

您的查詢似乎有點過,但是這是它使用了雄辯的查詢生成器複製。不要忘了在你的控制器或型號中參考數據庫