2017-03-12 118 views
2

我是一個SQL初學者。我試圖編寫一個查詢,「如果總薪水大於300,000,提供所有人爲每個部門提供的總薪水」。 我已經寫了一些,但不能完全弄清楚。我不知道這個查詢

USE EMP_DB_01; 
SELECT DEPTNAME, SUM(SALARY) AS 'Total Salary' 
FROM DEPT, EMP 
WHERE (SALARY > 300000) AND (DEPT.DEPTNO = EMP.DEPTNO) 
GROUP BY DEPTNAME 

表是這裏 enter image description here

+0

您不能簡單地使用逗號(,)並從多個表中獲取數據。您應該使用JOIN從SQL中的多個表中獲取數據。 –

+0

@MurtuzaKhan正式注意到 – Sami

回答

3

您應該使用DEPT和EMP之間的連接可以基於DEPT.DEPTNO = EMP.DEPTNO ..和總薪水超過300000你應該使用擁有和不到哪

有過濾器彙總結果的結果..哪裏過濾行的值

這個返回部門和相關的總薪水時的總和> 300.00

USE EMP_DB_01; 
SELECT DEPTNAME, SUM(SALARY) AS 'Total Salary' 
FROM DEPT 
INNER JOIN EMP ON DEPT.DEPTNO = EMP.DEPTNO 
HAVING SUM(SALARY) > 300000 
GROUP BY DEPTNAME 
+0

我認爲SUM(SALARY)> 300000 – HRgiger

+0

@HRgiger答案更新爲SUM salauary – scaisEdge

+0

@scaisEdge沒有工作 – Sami