Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menghimpunkan Keputusan Fasih Laravel mengikut Hari?

Bagaimanakah Saya Boleh Menghimpunkan Keputusan Fasih Laravel mengikut Hari?

Patricia Arquette
Patricia Arquetteasal
2024-11-03 15:09:03689semak imbas

How Can I Group Laravel Eloquent Results by Days?

Mengumpulkan Hasil Laravel Fasih Mengikut Hari

Apabila bekerja dengan jadual yang mengandungi rekod yang menjejaki aktiviti pengguna, pengumpulan mengikut hari boleh berguna untuk mendapatkan cerapan tentang corak trafik. Walau bagaimanapun, kehadiran masa yang berbeza untuk setiap rekod boleh menghalang pengumpulan yang tepat.

Penyelesaian 1: DB::Pertanyaan Mentah

Untuk mencapai pengelompokan berdasarkan hari, gunakan Fungsi DATE() dalam MySQL. Fungsi ini menanggalkan komponen masa daripada cap masa, menghasilkan tarikh tulen.

DB::table('page_views')
    ->select(DB::raw('DATE(created_at) as date'), DB::raw('count(*) as views'))
    ->groupBy('date')
    ->get();

Penyelesaian 2: Pertanyaan Fasih dengan Karbon

Untuk kekal dalam rangka kerja Laravel Eloquent, memanfaatkan Karbon untuk manipulasi tarikh. Klausa pertama menapis rekod yang dibuat dalam bulan lepas. Pengumpulan mengikut tarikh dan susunan mengikutnya dalam tertib menurun memastikan pembentangan kronologi.

<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>

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghimpunkan Keputusan Fasih Laravel mengikut Hari?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn