我的目标是检索“事件”和“事件类型”,计算每天“事件”的数量(groupby天数),并在每个日期获得“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'在'字段列表'中)
$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 :(得分:0)
您应该加入eventtypes
您应该在查询中添加类似的smth。
->join('eventtypes', 'event.type_id', '=', 'eventtypes.id')
我认为您错过了with
这是一个急切的加载,并且在查询中无法访问此关系。