Как рассчитать каждый столбец и отобразить с помощью Eloquent - PullRequest
0 голосов
/ 28 апреля 2018

Я учусь о поиске. Я могу получить только один первый результат.

Имя таблицы "цвет" вот информация о столбце

id |  colorname 
-----------------
1      black     
2      pink
3      blue
4      pink
5      green

Я хотел бы рассчитать сумму каждого 'colorname' и отображение списка.

это мой текущий код

  public function search(Request $request)
    {

    $colors = Color::select('colorname', DB::raw('COUNT(colorname) count'))
    ->groupBy('colorname')
    ->get();

    $param = ['input' => $request->input, 'colors' =>$colors];
    return view('contacts.find', $param);
     }

файл лезвия

    @if (isset($colors))
    <table>
    <tr>
       <td>{{$colors->getData()}}</td>
    </tr>
    </table>
</div>
    @endif

MODEL

class Color extends Model
{

public function getData()
    {
        return $this->color;
    }
}

Ответы [ 2 ]

0 голосов
/ 28 апреля 2018

Используйте это:

$colors = Color::select('colorname', DB::raw('COUNT(colorname) count'))
    ->groupBy('colorname')
    ->get();
0 голосов
/ 28 апреля 2018

Вам нужно сосчитать все цвета, а затем сгруппировать их по названию:

SELECT COUNT(colorname), colorname FROM color
GROUP BY colorname;

Здесь SQLFiddle: http://sqlfiddle.com/#!9/821d57/7/0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...