Как объединить три запроса в один запрос и упорядочить по дате - PullRequest
0 голосов
/ 03 мая 2020

в приведенном ниже коде, мне нужна помощь, как я могу объединить эти три запроса и иметь один запрос и порядок на stocks.Indate and loadings.Outdate как Дата, потому что у меня есть две даты из двух таблиц, поэтому я хочу объединить эту дату, чтобы иметь одну дата

$item_load_list_cur_month = DB::table('products')
->select('loadings.qty', 'loadings.Outdate', 'products.name')
->join('loadings', 'loadings.pid', '=', 'products.id')
->whereYear('loadings.Outdate', Carbon::now()->year)
->whereMonth('loadings.Outdate', Carbon::now()->month)
->where('loadings.pid', '=', 6)
// ->OrderBy('loadings.Outdate','ASC')
->get();

$item_stock_list_cur_month = DB::table('products')
->select('stocks.qty', 'stocks.Indate', 'products.name')
->join('stocks', 'stocks.pid', '=', 'products.id')
->whereYear('stocks.Indate', Carbon::now()->year)
->whereMonth('stocks.Indate', Carbon::now()->month)
->where('stocks.pid', '=', 6)
->get();

dd($item_stock_list_cur_month);

$open_balance_prev = DB::select(DB::raw(
    "SELECT
        products.id,
        products.name, 
        (
            (products.open_stock) + (
                select ifnull(sum(stocks.qty),0)
                from stocks
                where stocks.pid = products.id
                and MONTH(stocks.Indate) <= MONTH(CURRENT_DATE())-1
            ) - (
                select ifnull(sum(loadings.qty),0)
                from loadings
                where loadings.pid = products.id
                and MONTH(loadings.Outdate) <= MONTH(CURRENT_DATE())-1
            )
        ) as open_balance
    from products
    where products.id = 6"
));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...