MySQL使用触发器或MySQL函数从表中获取余额的方法如下:
首先,创建一个触发器,当表中的数据发生变化时触发执行:
CREATE TRIGGER update_balance AFTER INSERT ON your_table
FOR EACH ROW
BEGIN
UPDATE your_table SET balance = (SELECT SUM(amount) FROM your_table WHERE user_id = NEW.user_id);
END;
上述触发器会在每次向表中插入数据后,自动更新对应用户的余额字段。
首先,创建一个函数,计算指定用户的余额:
DELIMITER //
CREATE FUNCTION get_balance(user_id INT) RETURNS DECIMAL(10, 2)
BEGIN
DECLARE balance DECIMAL(10, 2);
SELECT SUM(amount) INTO balance FROM your_table WHERE user_id = user_id;
RETURN balance;
END //
DELIMITER ;
上述函数会根据传入的用户ID计算该用户的余额。
使用触发器或函数后,可以通过以下方式从表中获取余额:
SELECT balance FROM your_table WHERE user_id = <user_id>;
上述查询语句会返回指定用户的余额。
SELECT get_balance(<user_id>);
上述查询语句会调用自定义的函数来计算指定用户的余额。
推荐的腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云