2017-09-19 50 views

回答

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 Server 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