Я создал хранимую функцию в phpmyadmin, которая вычисляет несколько полей для получения общего значения.Я использую функцию, так как вычисления должны использоваться несколько раз в нескольких сценариях, поэтому, насколько мне известно, это наиболее эффективный способ сделать это для минимизации обновлений кода.
Я протестировал функциюи он работает с точки зрения предоставления выходных данных, однако, когда я объединяю его со своим запросом, он предоставляет агрегированную цифру по результатам запроса, а не конкретную цифру в строке:
Код функции:
BEGIN
DECLARE Output_needed INT(7);
SET Output_needed = (select SUM(Col1+Col2+Col3) from table1);
RETURN (Output_needed);
END
SQL-запрос:
Select ID, function_name(), Col1, Col2, Col3 from table1
Требуемый вывод запроса
ID Function Returns *Output_needed* Col1 Col2 Col3
1 100 *10* 4 4 2
2 100 *50* 10 20 20
3 100 *5* 1 2 2
4 100 *15* 10 2 3
5 100 *20* 6 3 1
Может кто-нибудь посоветовать, где я ошибаюсь?Я предполагаю, что где-то пропустил шаг, но, кажется, не могу понять это.
Спасибо!