我有这样的第一张table(待定)
id_med name stock
1 abc 10
2 bcd 15
3 efd 11
第二张table是这样的(待定)
id_trans id_med qty
1 1 4
2 1 2
3 2 3
如何计算第一张表中的最后库存或剩余库存?我试过了,但没有显示出3号身份证的剩余库存
SELECT tbl_med.stock, tbl_med.id_med, tbl_med.stock - SUM(tbl_trans.qty) AS stock_left FROM tbl_med
JOIN tbl_trans ON tbl_med.id_med= tbl_trans.id_med
GROUP BY tbl_med.id_med
1条答案
按热度按时间c0vxltue1#
我想你只需要
coalesce()
以及left join
:注意,通常在
SELECT
不是的GROUP BY
键是sql中的错误。但是,如果GROUP BY
具有表的主键。我想id_med
是的主键tbl_med
.