2016-01-26 5 views
1

Моя цель - получить «события» и «события», подсчитать количество «событий» в каждый день (по группам дней), а также получить общую сумму «eventtypes.price» в каждый из этих дней. У меня возникла проблема с доступом к таблице eventtype.Яркая нетерпеливая нагрузка, выберите количество и сумму

таблицы событий

id 
event_start 

типСобытия стол

id 
price 

запросов (этот запрос работает)

$events = Event::with('eventtype') 
    ->select(DB::raw('DATE(events.event_start) as date'), DB::raw('count(*) as eventcount')) 
    ->where('events.event_start', '>=', $rangestart) 
    ->groupBy('date') 
    ->orderBy('date', 'ASC') 
    ->get(); 

запрос (этот запрос возвращаемая ошибка столбца не найдено: 1054 Неизвестный столбец «eventtypes .price 'in' список полей ')

$events = Event::with('eventtype') 
    ->select(DB::raw('DATE(events.event_start) as date'), DB::raw('count(*) as eventcount'), DB::raw('sum(eventtypes.price) as sumtotal')) 
    ->where('events.event_start', '>=', $rangestart) 
    ->groupBy('date') 
    ->orderBy('date', 'ASC') 
    ->get();   

Не знаете, почему eventtypes.price будет неизвестно, это четко определено в моей модели, и я использую его где-то еще.

ответ

0

Вы должны присоединиться к eventtypes

Вы должны добавить то вроде этого к вашему запросу.

->join('eventtypes', 'event.type_id', '=', 'eventtypes.id') 

Я думаю, что вы пропустите понять, что with это нетерпеливые нагрузки, и это отношение не доступно в запросе.

+0

ahhhhhh, я думал, что 'with' был мгновенным' join'. Супер, спасибо, это работает! – user3489502

Смежные вопросы