DELIMITER //
DROP FUNCTION IF EXISTS TotalProductionCost;
CREATE FUNCTION TotalProductionCost(Abuilt int(10),Ucost Decimal(5,2))
RETURNS Decimal(5,2)
BEGIN
DECLARE TotalCost Decimal(5,2);
SET TotalCost = Abuilt * Ucost;
RETURN TotalCost;
END //
DELIMITER ;
SELECT TotalProductionCost(10,1000) AS TotalCost;
我已经创建了上述函数时执行它在mysql工作台它工作正常查询执行,但当我调用函数,它没有返回任何东西..查询成功执行。我的功能没有任何返回
这应该会返回一些东西。值得注意的是,你试图在'DECIMAL(5,2)'中返回'10000',这会导致截断和数据丢失,q.v. [this Fiddle](http://sqlfiddle.com/#!9/9eecb7d/85025)。如果您打算将这些数字用作输入,则可能需要提高返回类型的精度。 –
是的..我增加了精度和工作..非常感谢你 – Riya