2017-02-13 3 views
0

MSSQL 2008R2 사용. 나중에 뷰를 만들려면 select를 만들어야합니다. 3 개의 테이블이 있습니다. 테이블 테이블 사용자와 함께 1 대 1로 있습니다. 테이블 sales_lines 테이블에는 하나 또는 여러 개의 테이블이 있습니다.mssql sum이있는 여러 테이블 중에서 선택

테이블 : Emply

id   Hourly_rate 
1   12.50 
2   19.00 

테이블 : USER

ID   Name 
1   BoB Smith 
2   Mary Jones 

테이블 : Sales_Lines

ID   AMOUNT   DATE_SALE 
1   10.00    01/12/2017 
2    5.00    01/15/2017 
1   15.00    01/12/2017 
1   30.00    01/01/2017 

출력은 사용자 ID 당 하루 총 매출을 표시한다

ID   Name     Total_Sales   Date 
1   Bob Smith   25.00       01/12/2017 
1   Bob Smith   30.00       01/01/2017 
2   Mary Jones   5.00      01/15/2017 
0,123,

답변

0

두 테이블을 조인하고 나중에 그룹화해야합니다.

SELECT s.ID, SUM(s.AMOUNT), s.DATE_SALE 
FROM USER u LEFT OUTER JOIN Sales_Lines s 
ON u.ID = s.ID 
GROUP BY s.DATE_SALE, s.ID; 

이 쿼리

는 다음과 같이 읽을 것입니다 :
그것이 sales_line 동일한 사용자와 동일한 날짜별로 그룹화 것와 함께 모든 사용자 구성되어 그룹에서 금액과 날짜의 합, 나에게 사용자 ID를 가져옵니다.

+0

감사합니다. Faegy - 실행하면 오류가 발생합니다. USER.ID는 집계 함수 또는 GROUP BY 절에 포함되어 있지 않기 때문에 선택 목록에서 유효하지 않습니다. – Ronin

+0

내 편집으로 다시 시도 할 수 있습니까? – Faegy

+0

감사합니다. Faegy, 이제 제대로 작동합니다. 이제는 더 많은 테이블을 위해이를 확장해야하지만 이것은 나를 시작하게 할 것입니다. – Ronin

관련 문제