我想显示两个表中的所有值([JC_ItemDSP10days],[JC_ItemDSP30Days])
当我运行以下查询时,它会返回 14210行
select
itemid,sum(qtysold) [NineDaysSold]
from
[HQMatajer].[dbo].[JC_ItemDSP10days]
group by ItemID
当我运行此查询时,它返回 16455行
select
itemid,sum(qtysold) [ThirtyDaysSold]
from
[HQMatajer].[dbo].[JC_ItemDSP30Days]
group by ItemID
现在我要显示两个表中的所有记录,当 JC_ItemDSP10days.ItemID = JC_ItemDSP30Days.ItemID 时,以及如果记录不在任何一个表中,它也必须显示结果
这是我试过的
select
ItemID =isnull(nineDays.itemid,thirtyDays.ItemID),
CONVERT(DECIMAL(10,2),sum(nineDays.qtysold)) [NineDaysSold],
CONVERT(DECIMAL(10,2),sum(thirtyDays.qtysold)) [ThirtyDaysSold]
from
[JC_ItemDSP10days] nineDays
FULL outer JOIN [HQMatajer].[dbo].[JC_ItemDSP30Days] thirtyDays on nineDays.ItemID=thirtyDays.ItemID
group by nineDays.ItemID,thirtyDays.ItemID
order by ItemID
但结果是错误的
这是 ItemID = 9 的实际值 从前两个查询结果