我在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
有人能告诉我哪里出错了吗?我想我在某个地方漏了一步,但似乎想不出来。
谢谢!
1条答案
按热度按时间e3bfsja21#
函数select query不具备获取单行结果的条件。因此,我刚刚添加了一个字段以供有条件使用。
功能:
选择查询: