📌  相关文章
📜  Laravel eloquent 获取无重复数据 - PHP (1)

📅  最后修改于: 2023-12-03 15:32:33.320000             🧑  作者: Mango

Laravel Eloquent 获取无重复数据

当我们使用 Laravel Eloquent 查询数据时,有时候需要从数据库中获取不重复的数据,可以使用以下方法来实现。

去重查询

在 Eloquent 模型中使用 distinct 方法可以返回不重复的结果集。

$uniqueResults = App\Models\User::distinct()->get(['name']);

以上代码将返回 User 模型中所有不重复的 name 值。

聚合查询

当对同一列进行聚合操作时,可以使用 groupBy 方法来获取不重复的结果集。

$uniqueResults = App\Models\Order::groupBy('customer_id')->get(['customer_id']);

以上代码将返回 Order 模型中所有不重复的 customer_id 值。

扩展查询

有时候我们需要获取多个列的不重复值,可以使用 selectgroupBy 方法结合来扩展查询。

$uniqueResults = App\Models\Order::select(['customer_id', 'product_id'])->groupBy('customer_id', 'product_id')->get();

以上代码将返回 Order 模型中所有不重复的 customer_idproduct_id 值。

以上就是使用 Laravel Eloquent 获取不重复数据的方法,可以根据实际需求进行选择。