Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

onieyanihh's avatar

Convert raw query into more eloquent/query builder way

Hi. i have this raw query in laravel. Can someone help me to convert my raw query into eloquent/query builder approach?

$ssRaw = DB::select(DB::raw("
            SELECT ts.serviceName as servicename
            , COUNT(*) AS totalservices
            FROM tbl_services AS ts
            JOIN (
                SELECT REPLACE(TRIM(LEADING SUBSTRING_INDEX(t1.serviceType,',',seq.n-1) FROM SUBSTRING_INDEX(t1.serviceType,',',seq.n)), ',','') AS stype
                    FROM tbl_inquiries AS t1
                    JOIN (
                            SELECT 1 + x1.n + (x2.n * 10) AS n
                            FROM ( SELECT  0 AS n UNION SELECT  1 UNION SELECT  2 UNION SELECT  3 UNION SELECT  4 UNION SELECT  5 UNION SELECT  6 UNION SELECT  7 UNION SELECT  8 UNION SELECT  9) AS x1
                                , ( SELECT  0 AS n UNION SELECT  1 UNION SELECT  2 UNION SELECT  3 UNION SELECT  4 UNION SELECT  5 UNION SELECT  6 UNION SELECT  7 UNION SELECT  8 UNION SELECT  9) AS x2
                        ) AS seq
                    ON seq.n > 0 AND SUBSTRING_INDEX(t1.serviceType,',',seq.n-1) <> SUBSTRING_INDEX(t1.serviceType,',',seq.n)
                    AND t1.paymentStatus IN (2, 3, 4)
                ) AS inq
            ON inq.stype = ts.serviceID
            GROUP BY serviceID
            ORDER BY totalservices desc;
        "));
0 likes
2 replies

Please or to participate in this conversation.