Я ожидаю получить Closed balance
вчерашнего дня и использовать его как open balance
сегодня, затем я вычислю новый `закрытый баланс сегодня
Мы знаем, что это closed balance= open balance+Inward-outward
.
Итак, у меня есть три таблицы products, stocks as Inward and Loadings as Outwards
Я разработал sql query
, который выбирает данные вчера и сегодня согласно моему запросу ниже.
DB::select(DB::raw("SELECT products.id, products.name,
(select categories.name from categories where categories.id=products.category_id) as
category_name,
(select ifnull(sum(loadings.qty),0) from loadings where loadings.pid=products.id and
DATE(loadings.Outdate)= STR_TO_DATE('04/02/2020','%m/%d/%Y')-1) as total_loadings_yesterday_date ,
(select ifnull(sum(stocks.qty),0) from stocks where stocks.pid=products.id and
DATE(stocks.Indate)=STR_TO_DATE('04/02/2020','%m/%d/%Y')-1) as total_stocks_yesterday_date,
(select ifnull(sum(stocks.qty),0) from stocks where stocks.pid=products.id and
DATE(stocks.Indate)=STR_TO_DATE('04/02/2020','%m/%d/%Y')-1) as total_stocks_specific_date,
(select ifnull(sum(loadings.qty),0) from loadings where loadings.pid=products.id and
DATE(loadings.Outdate)= STR_TO_DATE('04/02/2020','%m/%d/%Y')) as total_loadings_specific_date ,
(select ifnull(sum(stocks.qty),0) from stocks where stocks.pid=products.id and
DATE(stocks.Indate)=STR_TO_DATE('04/02/2020','%m/%d/%Y')) as total_stocks_specific_date
from products"));
Это еще одна sql запрос, который выбирает открытый баланс отдельно, поэтому я хочу присоединиться также, чтобы иметь один запрос, чтобы мы могли перечислить все продукты и их данные в качестве выбранных.
SELECT id, products.open_stock FROM products where DATE(products.created_at) =
STR_TO_DATE('04/02/2020','%m/%d/%Y')-1 ORDER by products.id
после выбора этих данных я вычислить вручную, чтобы получить closed balance of yesterday and closed balance of today
Пример:
Я хочу найти сводную информацию о дате 02/04/2020
, поэтому в моем запросе sql выше я буду получить записи от 01/04/2020 из обеих таблиц и получить закрытое сальдо и принять это сальдо в качестве открытого сальдо 02/04/2020
, затем я вычислил новый закрытый сальдо запрошенной даты 02/04/2020
Пример:
Вы хотите закрытый баланс 02/04/2020
`Inward_of_y eesterday = 0 Outward_of вчера = 20 Открытый баланс (начальный_бесс, который я получаю из продуктов) = 100
so Closed balance_of yesterday= 100+0-20= 80
Inward_of_today = 0 Outward_of сегодня = 10
открытый баланс = закрытый баланс вчера = 80
новый баланс закрытия = 80 + 0-10 = 70`
Итак, мой вопрос: как сделать это l oop без неправильного ответа? и объединить эти утверждения в одно?
Спасибо за вашу помощь Заранее
как мы можем заархивировать эту логи c