DELIMITER |
CREATE FUNCTION value_economy(gnp_old float, gnp_new float)
RETURNS float
BEGIN
DECLARE result float;
DECLARE result1 float;
SET result1 = (gnp_new - gnp_old) / gnp_old * 100;
SET result = result1;
IF(result >= 0) THEN
SELECT CONCAT("UP");
ELSE
SELECT CONCAT("DOWN");
END IF;
RETURN result1;
END;|
почему эта ошибка?
В соответствии с документацией по пользовательским функциям в MySQL вы можете возвращать только значения типа {STRING|INTEGER|REAL|DECIMAL}
Если вы хотите получить выбранный набор результатов, вам нужно определить procedure
но не function
.
SELECT
которые нигде не сохраняют результаты.