У меня есть этот запрос, который является функцией для получения ожидаемых продаж для любого данного будущего месяца.
DELIMITER //
CREATE FUNCTION get_expected_sales(month INT)
RETURNS DOUBLE(4, 2)
BEGIN
DECLARE month INT;
DECLARE total_sales_2015 INT;
DECLARE total_sales_2016 INT;
DECLARE total_sales_2017 INT;
DECLARE expected_sales DOUBLE(5, 2);
SELECT SUM(amount) INTO total_sales_2015
FROM fss_Payment payTableRef
WHERE MONTH(paydate)=month AND YEAR(paydate)=2015;
SELECT SUM(amount) INTO total_sales_2016
FROM fss_Payment payTableRef
WHERE MONTH(paydate)=month AND YEAR(paydate)=2016;
SELECT SUM(amount) INTO total_sales_2017
FROM fss_Payment payTableRef
WHERE MONTH(paydate)=month AND YEAR(paydate)=2017;
SET expected_sales = ROUND((total_sales_2015+total_sales_2016+total_sales_2017)/3,2);
RETURN expected_sales;
END //
DELIMITER;
Основные ошибки, которые я получаю: «Функция уже существует» и «Ошибка в ГДЕпункт в строке 15 "