我不明白为什么当我在另一个函数值中调用我的SQL函数时会丢失。基本上我有这样的事情:
CREATE FUNCTION `myCustomFunctionA`(paramOne INTEGER, paramTwo INTEGER) RETURNS INT(11)
BEGIN
DECLARE outputOne INT(11);
DECLARE outputTwo INT(11);
SET outputOne = myCustomFunctionB(paramOne);
SET outputTwo = myCustomFunctionB(paramTwo);
RETURN myCustomFunctionC(outputOne, outputTwo);
END
请注意,当在myCustomFunctionA外部调用时,所有这些函数都返回一个整数。 I.E:运行 SELECT myCustomFunctionB(paramTwo); 实际上返回X值,对于paramOne也是如此。但是,当在myCustomFunctionA中调用这些函数时,它总是返回NULL。
到目前为止,我试图直接返回paramOne和paramTwo并且值是正确的。但是如果我在运行myCustomFunctionB后设置函数返回outputOne或outputTwo,那么它们也会返回NULL。
这似乎是我所遗漏的愚蠢但我无法看到它所以任何帮助或提示朝着正确的方向都会得到真正的赞赏。感谢。