首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将此SQL查询转换为Laravel语法?

如何将此SQL查询转换为Laravel语法?
EN

Stack Overflow用户
提问于 2019-11-07 03:12:29
回答 2查看 81关注 0票数 0

在这里,我的MySQL查询(工作在phpMyAdmin中):

代码语言:javascript
复制
    SELECT waktu_kerusakan, workcenter, COUNT(workcenter) AS jumlah_repair 
    FROM repair WHERE year(waktu_kerusakan)='2019'  GROUP BY workcenter , 
    month(waktu_kerusakan) BETWEEN 1 and 6 Order By jumlah_repair Desc

然后,我试着用以下的Laravel语法(不起作用):

代码语言:javascript
复制
    $sql = Main::groupBy('workcenter')->select('workcenter', \DB::raw('count(*) as frekuensi'))
                ->whereYear('waktu_kerusakan', 'like',  "%".$tahun."%")
                ->OrderBy('frekuensi', 'Desc')
                ->groupBy(\DB::raw("MONTH(waktu_kerusakan)"), [1, 6])
                ->get();

请任何人帮助我将MySQL查询转换为Laravel语法。谢谢你!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-11-07 03:52:23

尝尝这个。

代码语言:javascript
复制
    $repair = DB::table('repair')
    ->select('waktu_kerusakan','workcenter', DB::raw('COUNT(workcenter) AS jumlah_repair'))
->whereYear('waktu_kerusakan', $tahun)
    ->groupBy(DB::raw("MONTH(waktu_kerusakan)"), 'workcenter')
  ->whereIn(DB::raw('MONTH("waktu_kerusakan")'),[1, 6])
    ->orderBy('frekuensi', 'DESC')
    ->get()
票数 0
EN

Stack Overflow用户

发布于 2019-11-07 05:14:03

请尝试以下查询:

代码语言:javascript
复制
$sql = Main::select('workcenter', \DB::raw('count(*) as frekuensi'),\DB::raw('MONTH(waktu_kerusakan) as waktu_kerusakan_month'))
            ->where('waktu_kerusakan',$tahun)
            ->whereBetween('waktu_kerusakan_month',[1, 6])
            ->groupBy('workcenter','waktu_kerusakan_month')
            ->OrderBy('jumlah_repair', 'Desc')
            ->get();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58741452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档