假设我有两张表:
已知营业时间:
ChargeNum CategoryID Month Hours
111111 1 2/1/09 10
111111 1 3/1/09 30
111111 1 4/1/09 50
222222 1 3/1/09 40
111111 2 4/1/09 50
未知时间:
ChargeNum Month Hours
111111 2/1/09 70
111111 3/1/09 40.5
222222 7/1/09 25.5
我需要将这些时间(忽略月份)分组到一个数据表中,以便我的预期结果如下:
ChargeNum CategoryID Hours
111111 1 90
111111 2 50
111111 Unknown 110.5
222222 1 40
222222 Unknown 25.5
我似乎无法弄清楚这一点。任何帮助将不胜感激!
编辑:我需要总结每个 ChargeNum/Category 组合的小时数。我更新了示例数据以反映这一点。
你需要使用UNION
合并两个查询的结果。在你的情况下:
SELECT ChargeNum, CategoryID, SUM(Hours)
FROM KnownHours
GROUP BY ChargeNum, CategoryID
UNION ALL
SELECT ChargeNum, 'Unknown' AS CategoryID, SUM(Hours)
FROM UnknownHours
GROUP BY ChargeNum
注意 - 如果您使用UNION ALL
如上所述,它并不比单独运行两个查询慢,因为它不进行重复检查。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)