MySQL 用户定义函数与 SQL 查询一起使用时返回错误结果

问题描述 投票:0回答:1

我想查找特定信用卡用户的帐户总余额。下面是查询

CREATE FUNCTION GetAccountBalance(UserID INT) 
RETURNS DECIMAL(10, 2)
BEGIN
    DECLARE totalBalance DECIMAL(10, 2);
    
    SELECT SUM(Balance) INTO totalBalance 
    FROM Accounts 
    WHERE UserID = UserID;
    
    RETURN totalBalance;
END//

但是此函数返回所有用户的总余额,而不是特定用户的总余额。我怎么解决这个问题?请帮助我

该特定用户的总余额

sql mysql count user-defined-functions
1个回答
0
投票

您的参数名称与字段名称相同

WHERE UserID = UserID;

总是正确的,所以我猜这就是原因。 重命名函数的参数并重试。

© www.soinside.com 2019 - 2024. All rights reserved.