Laravel Eloquent - 获得一列

时间:2015-09-15 14:05:44

标签: laravel-5 eloquent

我有一个类似于以下文档的MongoDB集合:

{ "_id" : ObjectId("55f699bb1638cf0f4ba139f1"), "code" : 169, "categories" : "Consulenti del lavoro", "listing" : "B", "macrocategory" : "Consulenti" }

我需要获取一个macrocategory字段的数组,但它被分配给多个文档,我只需要一次出现。我尝试在我的Eloquent查询中使用distinct,但我无法使用它,因为我不知道哪个是返回值。

我的查询现在,多次返回宏类别:

$macrocategories = Category::orderBy('macrocategory','asc')->get();

谢谢!

1 个答案:

答案 0 :(得分:10)

您希望在希望整行唯一时使用distinct,当您希望特定列是唯一的时,您应该使用GROUP BY

我想这与您的order by coulmn -

相同

$macrocategories = Category::orderBy('macrocategory','asc')->groupBy('macrocategory')->get();

顺便说一句,如果您有不需要的列,则应使用select并仅获取您执行的列。