0
我在编写处理大型数据集的查询时非常糟糕。我想刺穿Laravel,看看我能想出什么。有没有更好的方法来编写这个查询并输出结果?使此查询更有效率
代码
$visitors = DB::table('visitors')
->where('id_client',1)
->select('id', 'ip', DB::raw('count(*) as total'), 'date', 'city', 'region')
->groupBy('ip')
->orderBy('date', 'DESC')
->simplePaginate(25);
结果
@foreach($visitors as $visitor)
<tr>
<td>
{{$visitor->id}}
</td>
<td>
@if (date('F d, Y', strtotime($visitor->date)) === date('F d, Y'))
Today
@else
{{ date('F d, Y', strtotime($visitor->date)) }}
@endif
</td>
<td>
{{$visitor-total}}
</td>
<td>
{{$visitor->city}}
</td>
<td>
{{$visitor->region}}
</td>
</tr>
@endforeach
{!! $visitors->render() !!}
而且,我得到的错误Use of undefined constant total - assumed 'total'
当我尝试加载页面。
任何帮助将不胜感激。谢谢!
好,因为它甚至没有工作,“更多”的效率将只是工作 –
'{$ visitor-total}}'语法错误,缺少对象的访问器方法''''。另外,你有什么问题?它慢吗?它不会产生预期的结果吗? – Ohgodwhy
由于输入错误导致出现该错误:{{$ visitor-total}}应该是{{$ visitor-> total}} – Kaladin11