Php 左加入拉威尔

Php 左加入拉威尔,php,laravel,laravel-5,laravel-5.3,Php,Laravel,Laravel 5,Laravel 5.3,我正在构建我的应用程序,我需要在laravel中使用leftJoin 我在数据库中准备了一个查询,效果很好 SELECT sp.id, ssp.sale_id, ssp.product_id FROM store_products sp LEFT JOIN store_sale_products ssp ON sp.id = ssp.product_id WHERE ssp.sale_id IS NULL AND sp.store_id = 1 现在我正在laravel上实现这个查询,我尝

我正在构建我的应用程序,我需要在laravel中使用
leftJoin

我在数据库中准备了一个查询,效果很好

SELECT sp.id, ssp.sale_id, ssp.product_id FROM store_products sp 
LEFT JOIN store_sale_products ssp ON sp.id = ssp.product_id 
WHERE ssp.sale_id IS NULL AND sp.store_id = 1
现在我正在laravel上实现这个查询,我尝试了这个

$nosaleproducts = Store_product::leftJoin('store_sale_products','store_products.id','=','store_sale_products.product_id')
        ->where('store_sale_products.sale_id','IS','NULL')
        ->where('store_products.store_id','=',session::get('store_id'))
        ->get(['store_products.id','store_products.product_name']);
但这并没有给我带来任何结果。有人可以指定我的查询有什么问题吗?

使用此选项

$nosaleproducts = Store_product::leftJoin('store_sale_products',function($join){
         $join->on('store_products.id','=','store_sale_products.product_id');})
        ->whereNull('store_sale_products.sale_id')
        ->where('store_products.store_id','=',session::get('store_id'))
        ->get(['store_products.id','store_products.product_name']);