将mysql转换为laravel 5 eloquent(左连接与select)

时间:2015-06-09 14:35:40

标签: php mysql eloquent laravel-5

我被困在重写mysql查询到laravel eloquent。

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
    )

任何帮助?

1 个答案:

答案 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();

您的查询看起来有些偏差,但这是使用eloquent查询构建器进行复制的。别忘了在控制器或模型中引用DB