Laravel Eloquent 결과를 일 단위로 어떻게 그룹화할 수 있나요?

Patricia Arquette
풀어 주다: 2024-11-03 15:09:03
원래의
624명이 탐색했습니다.

How Can I Group Laravel Eloquent Results by Days?

Laravel Eloquent 결과를 일별로 그룹화

사용자 활동을 추적하는 레코드가 포함된 테이블로 작업할 때 일별로 그룹화하면 결과를 얻는 데 유용할 수 있습니다. 트래픽 패턴에 대한 통찰력. 그러나 각 레코드에 서로 다른 시간이 있으면 정확한 그룹화를 방해할 수 있습니다.

해결책 1: DB::Raw Query

일별 그룹화를 수행하려면 다음을 활용하세요. MySQL의 DATE() 함수. 이 함수는 타임스탬프에서 시간 구성 요소를 제거하여 순수한 날짜를 생성합니다.

DB::table('page_views')
    ->select(DB::raw('DATE(created_at) as date'), DB::raw('count(*) as views'))
    ->groupBy('date')
    ->get();
로그인 후 복사

해결책 2: Carbon을 사용한 Eloquent 쿼리

Laravel Eloquent 프레임워크 내에 유지하려면, 날짜 조작을 위해 Carbon을 활용합니다. 첫 번째 where 절은 지난 달에 생성된 레코드를 필터링합니다. 날짜별로 그룹화하고 내림차순으로 정렬하면 연대순으로 표시됩니다.

<code class="php">$visitorTraffic = PageView::where('created_at', '>=', \Carbon\Carbon::now()->subMonth())
                            ->groupBy('date')
                            ->orderBy('date', 'DESC')
                            ->get(array(
                                DB::raw('Date(created_at) as date'),
                                DB::raw('COUNT(*) as "views"')
                            ));</code>
로그인 후 복사

위 내용은 Laravel Eloquent 결과를 일 단위로 어떻게 그룹화할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿