Есть таблицы покупка, продажа (дата, количество, цена, id номенклатуры)
Как узнать остаток на дату?
Остаток в количественном виде считается просто купили - продали, и легко выводится в разрезе по номенклатуре.
Но вот остаток в денежной форме?
Количество товара в последних партиях * их цену, за исключением не полной партии, там считать пропорционально количеству.
Как это реализовать на SQL
Или хотя бы логику
Может есть пример на PHP?
Точно также, как и в случае с количеством. Только теперь вычитаете из суммы, потраченной на закупку, сумму, полученную с продажи.
Вот пример запроса
SELECT(
(SELECT SUM(`количество` * `цена`) AS `сумма` FROM `покупка` WHERE ...)
-
(SELECT SUM(`количество` * `цена`) AS `сумма` FROM `продажа` WHERE ...)
) AS `остаток`