Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我怎样才能使选择在选择上拉威尔雄辩?_Php_Laravel_Laravel 5.3_Laravel Eloquent - Fatal编程技术网

Php 我怎样才能使选择在选择上拉威尔雄辩?

Php 我怎样才能使选择在选择上拉威尔雄辩?,php,laravel,laravel-5.3,laravel-eloquent,Php,Laravel,Laravel 5.3,Laravel Eloquent,我使用的是laravel 5.3 我的sql查询如下所示: SELECT * FROM ( SELECT * FROM products WHERE `status` = 1 AND `stock` > 0 AND category_id = 5 ORDER BY updated_at DESC LIMIT 4 ) AS product GROUP BY store_id 我想把它改成拉威尔的口才 但我还是很困惑 我该怎么做呢?如果您的查询非常

我使用的是laravel 5.3

我的sql查询如下所示:

SELECT * 
FROM (
    SELECT *
    FROM products 
    WHERE `status` = 1 AND `stock` > 0 AND category_id = 5
    ORDER BY updated_at DESC
    LIMIT 4
) AS product
GROUP BY store_id
我想把它改成拉威尔的口才

但我还是很困惑


我该怎么做呢?

如果您的查询非常复杂,您可以使用原始查询语法,如:

$data = DB::select(DB::raw('your query here'));
它将对指定的表触发原始查询,并返回结果集(如果有)


如果您有产品型号,您可以运行

$products = Product::where('status', 1)
->where('stock', '>', 0)
->where('category_id', '=', 5)
->groupBy('store_id')
->orderBy('updated_at', 'desc')
->take(4)
->get();

我认为这应该会给你同样的结果,因为你从派生表中提取所有内容。

我认为他问题的重点是如何在select中获取select,而不是复杂的内部select。@EddyTheDove,它是有效的。但是,
orderby
未执行