laravel中distinct()的使用方法與去重(轉)


laravel中distinct()的使用方法與去重

原文:https://phpartisan.cn/news/20.html

laravel 中 distinct( )的使用方法與去重, MySQL 通常使用 GROUPBY (本質上是排序動作)完成 DISTINCT 操作,如果 DISTINCT 操作和 ORDERBY 操作組合使用,通常會用到臨時表.這樣會影響性能. 在一些情況下, MySQL 可以使用索引優化 DISTINCT 操作,但需要活學活用。

一、laravel5怎么使用distinct

laravel5 使用 distinct 很簡單,官方已經提供了使用 distinct 方法允許你強制讓查找返回不重復的結果:

$users = DB::table('users')->distinct()->get();

可是官方提供的代碼是不能查找返回不重復的結果的,我們需要指定一下字段:

$users=DB::table('users')->select('name')->distinct()->get();

二、如何select多個字段

如果想要 distinct 多個字段,可以在 select 中添加字段名稱;但是要注意,當 select 多個字段,代表需要 status 與 name 都相同的才會被排除

$users=DB::table('users')->select('status','name')->distinct()->get();

這就是laravel中 distinct 使用方法的匯總了,如果你想要從數據庫中去重獲取數據,可以使用 GROUPBY 方法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM