شرط در query

- 5 روز پیش
توسط Behzad آپدیت شد
Matthew ( 4650 تجربه )
6 روز پیش
تخصص : ساده

@ali.bayat
@juza66

من میخوام تو این query شرطی قرار بدم که هر name_channel رو چک کنه ببینه ازش 3 تا هم نام name_channel_en وجود داشت چاپ کنه در غیر این صورت چاپ نکنه

        $channel = DetailsModel::select('id','name_channel','image_channel','tedad_bazdid_channel')->groupBy('name_channel')->whereNotNull('name_channel')->where('tedad_bazdid','>',2000)->inRandomOrder()->orderby('id','desc')->take(5)->get();
علی بیات ( 211697 تجربه )
6 روز پیش
تخصص : توسعه دهنده ارشد وب

از متد map استفاده کن تا کالکشن رو Iterate کنی .. شرط داخلش هم شبیه زیر میشه:

Model::where('name_channel', 'Esme Morede Nazar')->count() > 3
Matthew ( 4650 تجربه )
6 روز پیش
تخصص : ساده

@ali.bayat
متوجه نشدم یعنی یک کوئری دیگه بنویسم و اون کوئری رو داخل کوئری خودم قرار بدم

Matthew ( 4650 تجربه )
6 روز پیش
تخصص : ساده

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

Matthew ( 4650 تجربه )
5 روز پیش
تخصص : ساده

@juza66

@ali.bayat
الان در این کد whereکار نمیکنه امکان داره از selectباشه یا نه

Behzad ( 70 تجربه )
5 روز پیش

فکر کنم چیزی که @ali.bayat میگن این باشه:

     $channels = Channels::groupBy('name_channel')->
     whereNotNull('name_channel')->
     where('tedad_bazdid','>',2000)->
     inRandomOrder()->orderby('id','desc')->
     take(5)->
     get()->map(function($channel){  
                  return [  
                    'id' => $channel->id,
                    'name_channel' => $channel->name_channel,
                    'image_channel' => $channel->image_channel,
                    'tedad_bazdid_channel' => $channel->tedad_bazdid_channel,
                    'is_have_three_same_record' => Channels::where('name_channel', 'desired_name')->count() > 3                   
                 ];  
});
برای ارسال پاسخ باید وارد سایت شوید