我想获取当前日期的分支值,但如果当前日期没有值,则获取其最新读数的值。
例如,选择的日期是 2013 年 9 月 29 日。
我有三个分支。
其中两个分支机构的销售额为 2013 年 9 月 29 日。
一个分支没有编码值,但该分支的最晚起息日为 2013 年 8 月 30 日。
换句话说,
Branch 1 - Sep 29 - value is 150
Branch 2 - Sep 29 - value is 150
Branch 3 - Sep 29 - value is 0
我不能只做 150 + 150 + 0 = 300
我要做的是:
Branch 1 - Sep 29 - value is 150
Branch 2 - Sep 29 - value is 150
Branch 3 - Sep 29 - value is 0, so find the latest reading, system finds August 30 with value 250.
所以现在我可以做 150 + 150 + 250 = 550
目前,我有以下 SQL 查询:
SELECT
user_id, product_code, uom, inventory_date, account_id, branch_id, beginning_inventory
FROM
inventory_mgmt_uploads
WHERE
user_id = '137'
AND product_code = 'GRO_AL'
AND uom = 'box'
AND account_id = '3'
AND inventory_date <= '2013-09-29'
ORDER BY
inventory_date
上面查询的结果是:
现在我想要实现的是这个结果:
我试过的是这个查询:
SELECT
user_id, product_code, uom, inventory_date, account_id, branch_id, beginning_inventory
FROM
inventory_mgmt_uploads
WHERE
user_id = '137'
AND product_code = 'GRO_AL'
AND uom = 'box'
AND account_id = '3'
AND inventory_date <= '2013-09-29'
GROUP BY
branch_id
ORDER BY
inventory_date
但它给了我:
即使我尝试按 branch_id desc 或 inventory_date desc 进行订单,我仍然无法获得所需的输出。任何想法什么是正确的查询?蒂亚!