0
이것은 오라클의 스크립트이지만 MySQL에서 실행하는 데 문제가 있습니다.MYSQL에서이 스크립트를 어떻게 실행합니까?
SELECT s.branch_no, SUM(s.staff_salary)
from staff AS s
HAVING SUM(staff_salary) = (SELECT MAX(SUM(S2.staff_salary))
FROM staff AS S2
GROUP BY S2.BRANCH_NO)
GROUP BY s.branch_no;
내가 MySQL을 실행할 때 내가 오류 :
SELECT s.branch_no, SUM(s.staff_salary)
from staff AS s
HAVING SUM(staff_salary) = (SELECT MAX(SUM(S2.staff_salary))
FROM staff AS S2
GROUP BY S2.branch_no)
GROUP BY s.branch_no
LIMIT 0, 50
MySQL은 말했다 :
# 1064 - 당신은 당신의 SQL 구문에 오류가 있습니다; 올바른 구문이 줄에서 's.branch_no LIMIT 0, 50 GROUP' 근처를 사용하는 MySQL 서버 버전에 해당하는 설명서를 확인 7
'GROUP BY'이 HAVING''전에 가야합니다 (적어도 MS SQL에서, MySQL은 아마 동일). 난 그냥 PL SQL docs 보았다 및 거기에 동일한 구문을 것으로 나타납니다. –
일반적으로 HAVING 절 앞에는 [순서는 거의 모든 것] (https://www.w3schools.com/sql/sql_having.asp)이 있습니다. :) –
@PaulHodges group by –