راکت

مشکل در دریافت اطلاعات به صورت دلخواه از دیتابیس

3 پاسخ

سلام و خسته نباشید به دوستان عزیز
یک جدول دارم به اسم sees که تعداد بازید پست ها توی این جدول ثبت شده میخوام تعداد بازدید در هر روز تا هفته گذشته برگردونم و به شکل زیر عمل کردم :

$query->selectRaw('day (created_at) day , count(*) published')
          ->where('created_at' , '>' , Carbon::now()->subDay(7))->latest()
          ->groupBy('day')->get();

اما به جایی که 7 روز برگردونه 5 روز بر میگردونه یعنی برای روزی که بازیدیدی نداشته مقداری 0 بر نمیگردونه یعنی اصلا اون روز بر نمیگردونه میخوام به صورتی عمل کنه که اون روز هم اگه رکوردی نداشت هم بر گرده.

ثبت پرسش جدید

پاسخ‌ها

3
حسین مبارکیان
حسین مبارکیان
@hosseinmobarakian

تخصص: Javascript and php

سلام عزیز شما دارید از دیتا بیس استفاده میکنید و تا وقتی داخل دیتا بیس چیزی نباشه نمی تونه برای شما دیتا بر گردونه😶

محمدرضا قمی اویلی
محمدرضا قمی اویلی
@ghomi

تخصص: لاراول

@hesammousavi
@ali.bayat
راه حلی برای این مشکل باید وجود داشته باشه

شاید پاسخ شما همین‌جا باشد

محمدرضا قمی اویلی
محمدرضا قمی اویلی
@ghomi

تخصص: لاراول

من مجبور شدم به شکل زیر عمل کنم تا تعداد روز هایی که ندارم هم برام 0 قرار بده تا در chart js به مشکل بر نخورم آیا راه حل بهتری هست :

   private function CheckCount($sees , $day)
    {

        for ($i = 0 ; $i < $day ; $i++) {
            foreach ($sees as $now){
                if (empty($new[$i]))
                    $new[$i] = 0;

                if ($now['day'] === Carbon::now()->subDays($i)->day && $new[$i] === 0) 
                    $new[$i]= $now['published'];
            }

        }
        return array_reverse($new);
    }

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام