【问题标题】:Selecting multiple table columns and alias conditions in laravellaravel中选择多个表列和别名条件
【发布时间】:2020-07-05 14:28:32
【问题描述】:

我想在 laravel 中实现这个查询..

select sum(reading * multiplier) as consumption, reading_date, count(id) as num, (sum(reading * multiplier) / count(id)) as average 
from electricities where meter_name != '' ;

到目前为止我有这个

electricities = Electricity::select(DB::raw('sum(reading * multiplier) as consumption', 'reading_date', 'count(id) as num', '(sum(reading * multiplier) / count(id)) as average'))
                                        ->where('factory_code', '=', $request->$factory_code)
                                        ->whereYear('reading_date', $request->$year)
                                        ->groupBy(DB::raw('month(reading_date)'))
                                        ->orderBy('reading_date', 'asc')
                                        ->get();

但它不会返回所需的输出..

谁能帮我解决这个问题?谢谢

【问题讨论】:

  • 删除wherewhereYeargroupByorderBy,并添加where('meter_name', '<>', '')?

标签: database laravel eloquent orm


【解决方案1】:

根据您的查询:

electricities = Electricity::select(DB::raw('sum(reading * multiplier) as consumption', 'reading_date', 'count(id) as num', '(sum(reading * multiplier) / count(id)) as average'))
                                        ->where('meter_name', '!=', '')
                                        ->get();

【讨论】:

    猜你喜欢
    • 2018-07-23
    • 2019-07-29
    • 1970-01-01
    • 2017-10-09
    • 1970-01-01
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多