为了账号安全,请及时绑定邮箱和手机立即绑定

如何对新查询使用“选择查询结果(数组)”并显示每个值的结果?

如何对新查询使用“选择查询结果(数组)”并显示每个值的结果?

PHP
心有法竹 2021-05-07 14:12:42
我想从一个表中获取项目名称,并使用该名称使用另一表中的名称来计算值。我正在使用选择查询来获取结果行:SELECT itemname FROM tablename我想一个接一个地使用结果数组或数组值来运行我的下一个查询。    SELECT SUM(quantity) as inward FROM inward_details WHERE item_name='$itemname'一共有三张桌子物品向内的向外我想做的是从带有选择查询的项目表中获取项目列表,然后从内部获取项目的数量,从外部获取项目的数量,然后从外部数量减去内部数量并回显结果。例如项目名称为钢笔,入库数量为20,出库数量为5,那么我想将结果显示为钢笔15(20-5)但是我想要项目表中的所有项目。
查看完整描述

2 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

您只需使用一个查询,就可以得到想要的结果LEFT JOIN:


SELECT t.itemname, 

       COALESCE(SUM(i.quantity), 0) AS inward,

       COALESCE(SUM(o.quantity), 0) AS outward,

       COALESCE(SUM(i.quantity), 0) - COALESCE(SUM(o.quantity), 0) AS movement

FROM tablename t

LEFT JOIN inward_details i ON i.item_name = t.itemname

LEFT JOIN outward_details o ON o.item_name = t.itemname

GROUP BY t.itemname

我们使用a,LEFT JOIN以便如果没有inward_details与某项目相关联的行,我们仍然获得一行,并且我们COALESCE使用SUMa,NULL以便该情况的结果为0值。


查看完整回答
反对 回复 2021-05-14
  • 2 回答
  • 0 关注
  • 164 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信