у меня 2 таблицы
article_receive , которая записывает получение через следующие столбцы;
item | title |trans_id |qty|price|current_items | current_value
ADN231 | 12" Valve |jvn2333 |24 | 175 | 24 | 4200
ADN231 | 12" Valve |jvn2388 |12 | 185 | 36 | 6420
Текущие предметы - это всегда сумма всех предметов
Текущее значение - это стоимость всех транзакций вместе взятых (4200 + 2220)
Для выдачи у меня есть article_issue со следующими столбцами;
item | title | trans_id | qty
ADN231 | 12" Valve | ISU2333 | 6
ADN231 | 12" Valve | ISU2401 | 24
Мое требование заключается в том, что я хочу создать отчет о потреблении, который в основном рассчитывает точное количество позиций по каждому выпуску, используя метод FIFO.
2-я строка в article_issue содержит элементы из 2 транзакций и имеет 2 разные цены. Как рассчитать его в MYSQL 8.0.15 Community Version .
В настоящее время я использую этот оператор SQL;
SELECT
article_receives.id as RCVID, article_receives.item_id, article_receives.item_title, article_receives.quantity as rcv_qty,article_receives.transaction_id, article_receives.price as rate,
article_issues.id as ISUID,article_issues.quantity as isu_qty, article_issues.quantity * article_receives.price as value
FROM article_receives
LEFT JOIN article_issues ON article_receives.item_id = article_issues.item_id
ORDER BY article_receives.item_id
/** Some Column names are changed */
Это дает мне данные в следующем состоянии;
Пожалуйста, помогите мне в создании правильного отчета о потреблении в MySQL.
Кстати, это приложение, разработанное в laravel 5.8, так что eloquent также доступен.
Спасибо