我的情况与此相同:Sort data (order by) before group by in mysql
我尝试了所有答案,并从@Justin 找到了最佳答案
mysql 中的答案是这样的:
SELECT t1.*
FROM prd_data t1
WHERE t1.id = (SELECT t2.id
FROM prd_data t2
WHERE t2.sub_prd_id= t1.sub_prd_id
ORDER BY t2.created_at DESC
LIMIT 1)
我尝试过sql查询并且它有效
但是如何将sql查询转换为laravel eloquent呢?
我发现在laravel eloquent中转换sql查询很困难。因为查询很复杂
如何解决这个问题?
最佳答案
如果你想使用sql查询,你可以简单地使用DB::select()
DB::select("SELECT t1.* FROM prd_data t1 WHERE t1.id = (SELECT t2.id
FROM prd_data t2
WHERE t2.sub_prd_id= t1.sub_prd_id
ORDER BY t2.created_at DESC
LIMIT 1)");
关于mysql - 在 laravel 中如何在 group by 之前进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46560729/