我有两个查询如下所示,我正在尝试在 Access 中将它们合并为一个,我可以使用连接或其他方法来做到这一点吗?
查询 1
SELECT Table.ID, Sum Table.Amount as Complete_Total
FROM Table
WHERE Table.Status = "Complete"
GROUP BY Table.ID
查询 2
SELECT Table.ID, Sum Table.Amount as Failed_Total
FROM Table
WHERE Table.Status = "Failed"
GROUP BY Table.ID
答案 0 :(得分:1)
您可以尝试条件求和。
SELECT t1.ID,
Sum(IIF(t1.Status='Complete',t1.Amount,0)) AS [Complete Total],
Sum(IIF(t1.Status='Failed',t1.Amount,0)) AS [Failed Total]
FROM Table1 t1
GROUP BY t1.ID;
表格数据:
查询输出:
答案 1 :(得分:0)
使用条件聚合:
SELECT t.ID
Sum(CASE WHEN t.Status = 'Complete' THEN Amount END) as Complete_Total,
Sum(CASE WHEN t.Status = 'Failed' THEN Amount END) as Failed_Total
FROM Table t
GROUP BY t.ID;
在 MS Access 中,这将是:
SELECT t.ID,
Sum(IIF(t.Status = 'Complete', Amount, 0)) as Complete_Total,
Sum(IIF(t.Status = 'Failed', Amount, 0)) as Failed_Total
FROM Table t
GROUP BY t.ID;