How to execute raw queries with Laravel 5.1?

后端 未结 3 374
执念已碎
执念已碎 2020-12-01 00:27

So I have this tiny query to run on my DB and it works fine in MySQL Workbench. Basically, a SELECT with LEFT JOIN and UNION with LEFT JOIN again.

SELECT
            


        
3条回答
  •  伪装坚强ぢ
    2020-12-01 01:18

    I found the solution in this topic and I code this:

    $cards = DB::select("SELECT
            cards.id_card,
            cards.hash_card,
            cards.`table`,
            users.name,
            0 as total,
            cards.card_status,
            cards.created_at as last_update
        FROM cards
        LEFT JOIN users
        ON users.id_user = cards.id_user
        WHERE hash_card NOT IN ( SELECT orders.hash_card FROM orders )
        UNION
        SELECT
            cards.id_card,
            orders.hash_card,
            cards.`table`,
            users.name,
            sum(orders.quantity*orders.product_price) as total, 
            cards.card_status, 
            max(orders.created_at) last_update 
        FROM menu.orders
        LEFT JOIN cards
        ON cards.hash_card = orders.hash_card
        LEFT JOIN users
        ON users.id_user = cards.id_user
        GROUP BY hash_card
        ORDER BY id_card ASC");
    

提交回复
热议问题