我正在尝试从我的产品表中获取独特品牌的数量,并从 Laravel 集合中获取它们的数量。
我能够使用产品的特定查询来做到这一点,但我现在使用集合的原因是因为我还想获取产品的产品来源(国家)、条件(使用/新),我认为它使用来自一个查询的集合而不是为每个数据使用三个单独的查询会好得多。
下面的代码有效,但它不显示每个唯一品牌的计数。
这是我的控制器
$products = DB::table('products')
->select('products.*')
->whereNull('products.deleted_at')
->get();
$BrandCollection = collect($products);
$Brands = $BrandCollection->unique('Brand')->sortBy('Brand')->keyBy('Brand')->pluck('Brand');
所以,我正在寻找的结果是
惠普 3
东芝 2
联想 1
我认为可以使用 concat 进行收集,但由于我在 Laravel 5.2 上,我正在寻找其他解决方案。