Как мне запустить этот скрипт в MYSQL?

0

Это мой сценарий из Oracle, но у меня проблемы с его запуском в 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; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с "GROUP BY s.branch_no LIMIT 0, 50" в строке 7

Теги:

1 ответ

0
Лучший ответ

Попробуйте разделить запрос на маленькие подзапросы.

В вашем случае я бы постарался:

SELECT *
FROM (
    SELECT SUM(staff_salary) sm , branch_no
    FROM staff 
    GROUP BY BRANCH_NO
) s
ORDER BY sm DESC LIMIT 1

Ещё вопросы

Сообщество Overcoder
Наверх
Меню