2013-10-16 2 views
0

나는 다음과 같은 레코드가있는 테이블이 있습니다, SQL MS 액세스 2007

date, name, amount, balance, debit_credit. 

이 표는 몇 시간에 걸쳐 여러 기업에 대한 관측과 샘플을 나타냅니다.

나는 다음과 같은 레코드 다음 표를하고 싶습니다

:

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; 

나는 aggregate1을 계산하기 위해 다음과 같은 SQL 쿼리를 작성했습니다 :

aggregate1, aggregate2, aggregate3, aggregate4, name. 

.

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

그러나 나는 어떤 쿼리를 위와 같은 조건으로 다른 테이블과 결합하는 방법을 알고 있습니까? 또한이 쿼리의 매개 변수로 날짜를 설정하는 방법을 알고 싶습니다.

귀하의 제안과 해결책을 알려 주시면 감사하겠습니다. 당신의 배려에 감사합니다. 이 같은

답변

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