我有两个表:
checks
id time (DateTime)
views
id check_id amount
目前我有此查询可以在过去24小时内检索所有数据:
$dot_checks = View::whereHas('check', function($q) {
$q->where('time', '>', DB::raw('NOW() - INTERVAL 24 HOUR'));
$q->orderBy('time');
})->get();
我每分钟都有支票,但是为了显示目的,我需要在10分钟内将它们分组为10分钟。
我正在努力进行此分组,其中键('time')在相关表上。有人可以告诉我正确的方法。
谢谢您的时间。
这是您可以按几秒钟进行分组的方法(600 = 10分钟)。
$q->select(DB::raw('FROM_UNIXTIME(FLOOR( UNIX_TIMESTAMP(time)/600 ) * 600) AS t, COUNT(*)'))
$q->where('time', '>', DB::raw('NOW() - INTERVAL 24 HOUR'));
$q->orderBy('time')
$q->groupBy('t');