Не могу объявить переменную в функции MySQL - PullRequest
0 голосов
/ 25 октября 2019

Я пытался написать функцию, которая извлекает ставку заработной платы сотрудников на определенную дату;однако я продолжаю сталкиваться с синтаксической ошибкой, которую не могу понять.

Вот мой код:

create function rate_on_date(staff_id INT, given_date DATE) 
    returns float
    DETERMINISTIC
BEGIN
    DECLARE hour_rate float;

    SELECT DISTINCT salarygrade.HOURLYRATE STATUS INTO hour_rate
    FROM salarygrade JOIN staffongrade
    ON  salarygrade.GRADE = staffongrade.GRADE
    WHERE staff_id = staffongrade.STAFFNO 
    AND given_date BETWEEN staffongrade.STARTDATE AND staffongrade.FINISHDATE;

RETURN hour_rate;

END //

Вот сообщение об ошибке:

Код ошибки: 1064. У вас ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом со строкой 5

...