gpt4 book ai didi

Mysql函数从查询中返回一个值

转载 作者:IT老高 更新时间:2023-10-29 00:06:33 25 4
gpt4 key购买 nike

我想创建一个使用查询计算值的函数,但我在返回值时遇到问题:

缩短了,我的查询是:

CREATE FUNCTION func01(value1 INT , monto DECIMAL (10,2)) RETURNS DECIMAL(10,2)
BEGIN
SET @var_name = 0;
select @var_name=if(value1 = 1,monto * table.divisa_dolar,table.monto *divisa_euro) from table where data_init = 1;
return @var_nam;
END

我收到 SQL 语法错误。

SQL Error (1064): You have an error in your SQL syntax;

最佳答案

假设这些都是通用名称(table 不会是一个好的表名),问题是你不能使用 == 进行比较。您还缺少一些关键语法(DECLARE、SELECT INTO 等)。

更改为:

CREATE FUNCTION func01(value1 INT , monto DECIMAL (10,2))
RETURNS DECIMAL(10,2)
DETERMINISTIC
BEGIN
DECLARE var_name DECIMAL(10,2);
SET var_name = 0;
SELECT if(value1 = 1,monto *divisa_dolar,monto *divisa_euro) INTO var_name
FROM table
WHERE data_init = 1;
RETURN var_name;
END

MySQL Comparison Functions and Operators

相关问题:Single Equals in MYSQL

函数帮助:http://www.databasejournal.com/features/mysql/article.php/3569846/MySQL-Stored-Functions.htm

关于Mysql函数从查询中返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4940036/

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