Laravel Eloquent: Mengumpulkan Hasil Mengikut Tarikh
Dalam Laravel's Eloquent ORM, anda boleh menghadapi senario di mana anda perlu mengumpulkan hasil pertanyaan berdasarkan tarikh . Ini berguna untuk mendapatkan metrik harian atau bulanan daripada pangkalan data anda.
Apabila bekerja dengan lajur create_at bertanda masa, pengumpulan mengikut tarikh boleh menjadi mencabar kerana perbezaan masa. Berikut ialah versi diubah suai pertanyaan MySQL anda menggunakan Eloquent:
<code class="php">use Carbon\Carbon; $visitorTraffic = PageView::where('created_at', '>=', Carbon::now()->subMonth()) ->groupBy(DB::raw('DATE(created_at)')) ->orderBy('date', 'DESC') ->get([ DB::raw('Date(created_at) as date'), DB::raw('COUNT(*) as "views"') ]);</code>
Pertanyaan ini menggunakan kaedah groupBy dan orderBy untuk mengumpulkan hasil mengikut komponen tarikh lajur create_at, memastikan rekod dalam hari yang sama dikumpulkan bersama-sama. Fungsi SQL mentah DATE() dan COUNT() digunakan untuk mengekstrak tarikh dan bilangan paparan, masing-masing.
Dengan menggunakan pertanyaan ini, anda boleh mendapatkan kiraan tontonan harian dan mengumpulkannya mengikut tarikh dengan berkesan, menyediakan anda dengan cerapan yang anda perlukan untuk permohonan anda.
Atas ialah kandungan terperinci Berikut ialah beberapa pilihan tajuk, bermain dengan format soalan yang berbeza: Soalan langsung: * Bagaimana untuk mengumpulkan Keputusan Laravel Fasih mengikut Tarikh? * Cara Menghimpunkan Keputusan Fasih Laravel mengikut Tarikh untuk Daily Met. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!