Db Query groupby и сумма каждого - PullRequest
0 голосов
/ 17 марта 2020

я хочу достичь

Я пытаюсь сделать таблицу бронирования подходящей для отчета

сгруппировать по orgName и payment_gateway и сумма значения столбца комиссии для каждой даты

*OrgName #1
        - PayPal
            - 2020-01-01 
                    [ 
                    array_booking
                    ]
                - Count Total (LBP)
                - Total Sum(LBC) commison
            - 2020-01-02
                    [ 
                    array_booking
                    ]
                - Count Total (LBP)
                - Total Sum(LBC) commison
            - 2020-01-04
                .
                .

        - credit Card
            - 2020-01-02
                    [ 
                    array_booking
                    ]
                - Count Total (SBP)
                - Total Sum(SBC) commison


    *OrgName #2

таблица бронирований

таблица бронирований, как я упоминал, я хочу сгруппировать по org_id, payment_gateway и update_at.
подсчет и сумма внутри массива даты !!

id |org_id | local_id| check_in| Checkout| commision| Pay| Payment_gateway| create_at| update_at|

мой запрос я просто пытаюсь попробовать ellequent query и db builder

       $bookedStatus_id=BookStatus::where('name','Booked')->first()->id;
        $booking=Booking::with('bookable')->where('book_status_id',$bookedStatus_id)
                           ->where('pay','>',0)
                           ->selectRaw("DATE_FORMAT(Update_date, '%Y %m %e') date")
                           ->get()
                           ->groupBy(['organization_id','payment_gateway','date'])
                           ->toArray();

       // db query also try 
       $booking=DB::table('bookings')->where('book_status_id',$bookedStatus_id)
                       ->where('pay','>',0)
                        ->selectRaw("DATE_FORMAT(check_in, '%Y %m %e') date")
                       ->selectRaw("*,SUM(commison) as sum")                     
                       ->get()
                        ->groupBy(['organization_id','payment_gateway','date'])

                        ->toArray();

не работает для меня любая помощь, пожалуйста

...