我需要一些帮助..我有一些如下情况
我有2个表...电话(" in_table"和" out_table")
数据" in_table"看起来像
stock_id item_id date qty_in
-----------------------------------------
1 11 2017-07-11 12
2 11 2017-07-11 10
3 12 2017-07-11 10
4 12 2017-07-19 10
我有" out_table"就像
id_tr item_id date qty_out
-------------------------------------
1 11 2017-07-19 2
1 12 2017-07-19 1
2 11 2017-07-19 2
2 12 2017-07-19 1
我想结合日期并显示所有这些数据,
更新:通过item_id加入,但我想按日期选择
date item_id qty_in qty_out
---------------------------------------
2013-07-11 11 22 0
2013-07-11 12 10 0
2013-07-19 11 0 4
2013-07-19 12 10 2
感谢您的帮助。
答案 0 :(得分:0)
看起来你需要两个聚合子查询的完全外连接。但在你的情况下,我会在union子查询(派生表)中获得item_id
和date
以及相关子查询中的总和(subselect)。
select item_id, date,
(select sum(qty_in) from in_table i where i.item_id = sub.item_id and i.date = sub.date) as qty_in,
(select sum(qty_out) from out_table o where o.item_id = sub.item_id and o.date = sub.date) as qty_out
from (
select item_id, date from in_table
union
select item_id, date from out_table
) sub
order by date, item_id