gpt4 book ai didi

MySql函数tax(计算IVA)

转载 作者:行者123 更新时间:2023-11-29 11:18:04 26 4
gpt4 key购买 nike

问题是我直接从 shell(bash) 编写函数尝试从一些我不知道的 IDE 翻译语法!原函数为:

CREATE FUNCTION CalcIVA(@Price money)RETURNS money
AS
BEGIN
DECLARE @IVA money
SET @IVA = @Price * 1.16
RETURN @IVA
END;

因此更改了一些语法以使用 mysql> 提示:

CREATE FUNCTION CalculoIVA(x INT)RETURNS INT DETERMINISTIC 
BEGIN
DECLARE IVA INT
SET IVA = x *1.16
RETURN IVA
END;

我做错了什么?

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET IVA = x *1.16 RETURN IVA END' at line 1

最佳答案

确定您想要的数据类型。 INT 对你的 1.16 想法不太适用。您会因舍入为 INT 而失败。下面没有使用INT

DROP FUNCTION IF EXISTS CalculoIVA;
DELIMITER $$
CREATE FUNCTION CalculoIVA
(x DECIMAL(12,4))
RETURNS DECIMAL(12,4)
DETERMINISTIC
BEGIN
DECLARE IVA DECIMAL(12,4); -- OR FLOAT etc
SET IVA = x *1.16;
RETURN IVA;
END;$$
DELIMITER ;

select CalculoIVA(9.12);
-- 10.5792

如果您希望数据类型为 DECIMAL(12,2)FLOAT,只需进行必要的更改。

注意:PHPMyAdmin 用户不需要 DELIMITER 包装器。

关于MySql函数tax(计算IVA),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39418211/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com