2017-09-19 8 views
0

현재 각 직원이 보유한 총 제품 합계를 계산해야하는 작업을 수행하고 있습니다. 그런 다음 수정 금액 (5000)을 설정하고 총 금액이 수정 금액 (5000)보다 적은 직원을 표시해야합니다. 누구나이 특정 문제에 대한 쿼리 예제를 제공 할 수 있습니까?SQL 쿼리 - 각 직원의 총 금액을 확인하고 5000 미만의 금액을 가진 직원을 표시합니다.

+0

MySQL 또는 MS SQL Server를 사용하고 있습니까? (관련되지 않은 제품에 태그를 지정하지 마십시오.) – jarlh

답변

0

표 T2는 5000 미만의 직원 목록을 반환 한 다음 직원 마스터 테이블 T2와 결합합니다. 필요에 따라 테이블 이름을 변경하십시오.

SELECT * FROM EMPLOYEE T1 JOIN 
(SELECT EmployeeID,SUM(AMOUNT) AMOUNT FROM PRODUCT 
GROUP BY EmployeeID 
HAVING SUM(AMOUNT)<5000) T2 ON T1.EmployeeID=T2.EmployeeID 
0

당신이 위의 SQL 서버 2012을 사용하는 경우 : 더미 테이블로 위의 이미지를 촬영

SELECT * 
FROM ( SELECT * , 
        SUM(AMOUNT) OVER (PARTITION BY EmployeeID) AS EmpTotal 
      FROM PRODUCT 
     ) t 
WHERE t.EmpTotal > 5000; 
1

sample data

, 당신은 당신의 적절한 결과를 얻기를 위해이 쿼리를 사용할 수 있습니다

SELECT productid, price + productid as Amount 
FROM Products 
where Amount < 15 
order by productid 

이 쿼리를 실행하면 아래 이미지와 같은 결과가 나타납니다.

Result