2013-06-08 3 views
1

두 개의 테이블이 있습니다. balance_due라는 송장에서 열 이름과 계산 된 필드를 선택해야합니다.중첩 그룹 하위 절이있는 SQL Select 문

쿼리 결과는 모든 레코드 조합으로 인해 이름과 잔액이되어야합니다.

도움 주셔서 감사합니다.

+0

sqlfiddle이 작동하는 방법을 설명하는 유용한 –

답변

0

또는 다른 구문이 :

;With i As 
(
    SELECT vendor_id, sum(invoice_total-payment_total) as totalbalance 
    FROM invoices 
    WHERE payment_total is not null 
    GROUP BY vendor_id 
) 
SELECT Vendors.vendor_name, i.totalbalance 
From Vendors LEFT JOIN i ON Vendors.vendor_id = i.vendor_id 
+0

이것은 잘 작동했습니다. payment_total이 null 인 SUM 함수에서 행을 제외시킬 수있는 방법이 있습니까? –

+0

@Mike Ebbert : where 문을 추가하십시오. 내 업데이트 된 답변보기 –

+0

우수. 다시 한번 감사드립니다. –

1
SELECT v.vendor_name, i.totalbalance 
FROM Vendors as v 
    INNER JOIN (
      SELECT vendor_id, sum(invoice_total-payment_total) as totalbalance 
      FROM invoices 
      GROUP BY vendor_id 
    ) as i on i.vendor_id = v.vendor_id 
+0

편집하십시오 답변과 정교한을 끌 수는. – Charlie

+0

답변 해 주셔서 감사합니다. 그것은 내가 찾고있는 것이다. 그러나 나는 2 호선 (명령이 제대로 끝나지 않았 음)에서 00933 오류가 발생합니다. "FROM vendors from v"어떤 제안인가? –