有谁知道如何将此查询转换为原始查询生成器:
SELECT
A.ID_KANWIL,
COUNT(A.ID_CABANG) AS CABANG,
SUM(JUMLAH_KARYAWAN) AS JMLKARYAWAN,
COALESCE( B.JML_PESERTA, 0 ) AS JMLPESERTA
FROM ORGANISASI A
LEFT JOIN (
SELECT
ID_KANWIL,
SUM(JUMLAH_PESERTA) AS JML_PESERTA
FROM CAKUPAN
WHERE
BULAN=6
AND TAHUN=2017
AND ID_PROGRAM=1
GROUP BY
ID_KANWIL,
ID_PROGRAM
) B ON A.ID_KANWIL=B.ID_KANWIL
WHERE
A.BULAN=6
AND A.TAHUN=2017
GROUP BY
A.ID_KANWIL,
A.BULAN,
A.TAHUN
我试过了,
$data=colletc(DB::select( DB::raw("SELECT
A.ID_KANWIL,
COUNT(A.ID_CABANG) AS CABANG,
SUM(JUMLAH_KARYAWAN) AS JMLKARYAWAN,
COALESCE( B.JML_PESERTA, 0 ) AS JMLPESERTA
FROM ORGANISASI A
LEFT JOIN (
SELECT
ID_KANWIL,
SUM(JUMLAH_PESERTA) AS JML_PESERTA
FROM CAKUPAN
WHERE
BULAN=6
AND TAHUN=2017
AND ID_PROGRAM=1
GROUP BY
ID_KANWIL,
ID_PROGRAM
) B ON A.ID_KANWIL=B.ID_KANWIL
WHERE
A.BULAN=6
AND A.TAHUN=2017
GROUP BY
A.ID_KANWIL,
A.BULAN,
A.TAHUN") ))->get()
但是我得到了错误
Call to a member function get() on array
最佳答案
你在“colletc
”函数上使用了->get()
删除 ->get() 它应该可以工作
我建议你使用模型关系,你不需要像现在这样进行查询
关于mysql - 将 mysql 查询转换为 DB::raw 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46841200/