2013-10-16 48 views
0

我有一個表與以下記錄:合併兩個查詢於一體,SQL的MS Access 2007

date, name, amount, balance, debit_credit. 

在該表中對過一些時間幾家公司的觀察樣本。

我想下面的表格讓與以下記錄:

aggregate1, aggregate2, aggregate3, aggregate4, name. 

其中:

aggregate1 - sum of amount for all names where balance equals 1500, 1501; 
aggregate2 - sum of amount for all names where balance equals 1400, 1401; 
aggregate3 - sum of amount for all names where balance equals 1300, 1301; 

我寫了下面的SQL查詢來計算aggregate1。

SELECT Sum(Firms.amount)/100 AS [aggregate1], Firms.name 
FROM Firms 
where Firms.Balance in (1500, 1502) 
GROUP BY Firms.name; 

但是,我curiouse如何結合在一個表中的輸出(見上文)查詢與不同的條件? 此外,我想知道,如何將日期設置爲此查詢的參數?

我會感謝您的建議和解決方案。謝謝您的考慮。

回答

2

也許是這樣的:

SELECT 
    Firms.name, 
    SUM(iif(Firms.Balance IN (1500, 1502),Firms.amount,0))/100 AS aggregate1, 
    SUM(iif(Firms.Balance IN (1400, 1401),Firms.amount,0))/100 AS aggregate2, 
    SUM(iif(Firms.Balance IN (1300, 1301),Firms.amount,0))/100 AS aggregate3 
FROM Firms 
WHERE Firms.date >= #12/6/2012 3:54:15 PM# 
GROUP BY Firms.name; 

參考文獻:

+0

哇,這是工作。謝謝。你能否建議如何在此查詢中插入日期作爲參數? –

+0

更新答案 – Arion