【问题标题】:Laravel Eloquent Distinct foreach results subquerysLaravel Eloquent Distinct foreach 结果子查询
【发布时间】:2019-12-24 23:03:13
【问题描述】:

使用Eloquent relationships laravel中的建议

我愿意:

echo Cards::distinct('digitos')->count('digitos'); 
$digitos =  Cards::where('campanha_id',$campanha->id)->select(DB::raw('DISTINCT digitos'))->get();
foreach($digitos as $digito){
    echo $digito->digitos;
}

将返回:

不同的数字:48

循环>>> 146 - 248 - 236 - 346 - 256 - 245 - 257 - 367 - 234 - 368 - 356 - 267 - 127 - 235 - 268 - 147 - 238 - 145 - 347 - 126 - 158 - 348 - 258 - 134 - 128 - 138 - 247 - 345 - 157 - 358 - 168 - 124 - 246 - 156 - 167 - 125 - 357 - 135 - 123 - 237 - 148 - 136 - 137 - 239 - 249 - 149 - 129 - 139 -


在 laravel eloquent mysql 查询中: 如何实现 count foreach 数字作为示例: 146(7 个结果)- 248(3 个结果)- 236(30 个结果)- 等等......

Eloquent 查询中的目录? 谢谢。

在循环中插入查询,但速度很慢。

【问题讨论】:

  • distinct() 不接受参数并且对选择所有字段的 Eloquent 模型不执行任何操作,因为如果不是主键,它们都是不同的
  • 在这种情况下最好的方法是什么?
  • 最好的编程方式就是不编程。在您的情况下,编辑您的问题并向我们展示您想要什么、您得到什么以及您正在尝试什么。如果你写了一个好问题,你就会得到很好的答案。现在你的问题有点不清楚。请在how to ask 上阅读此处并欢迎来到 SO。
  • $your_query->get()->groupBy('digitos')
  • @IGP 你的评论应该是一个答案

标签: php mysql laravel eloquent


【解决方案1】:

我想你想要groupBy() Collection method

$your_query->get()->groupBy('digitos')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-24
    • 1970-01-01
    • 2018-10-22
    • 2021-10-26
    • 2021-05-28
    • 2019-06-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多