需要帮助构建一个查询,该查询可以选择一个项目并汇总其位于 2 个不同表中的数量。
示例场景:
表1:
身份证 | ITEM_NAME |数量 |
1 |项目_描述1 | 0 |
2 |项目_描述2 | 2 |
3 |项目_描述3 | 4 |
4 |项目_描述4 | 0 |
表2:
身份证 |项目 ID |批次号 |数量
1 | 1 | B1 | 100
2 | 1 | B2 | 100
3 | 2 | B3 | 0
4 | 3 | B2 | 100
5 | 4 | B2 | 200
6 | 4 | B3 | 100
需要一个查询来显示在数据网格表中,如下所示:
身份证 |项目名称 |数量
1 |项目_描述1 | 200
2 |项目_描述2 | 2
3 |项目_描述3 | 104
4 |项目_描述4 | 300
注:
此查询对于使用“LIKE”运算符运行搜索查询应该很有用,用户可以使用该运算符搜索所需的项目
要从 2 个表中获取总和,您可以使用以下查询
select a.ID, a.ITEM_NAME, a.QTY + coalesce(b.QTY,0)
from Table1 a
left join (
select ITEM_ID,sum(QTY) QTY
from Table2
group by ITEM_ID
) b on a.ID = b.ITEM_ID
尝试以下查询
select tbl1.id as ID,tbl1.Item_Name, tbl.qty+sum(tbl2.qty) as QTY
from table1 as tbl1
JOIN table2 as tbl2
ON tbl1.id = tbl2.id group by tbl2.item_id