gpt4 book ai didi

mysql - 使用计数触发除法金额未按预期工作

转载 作者:行者123 更新时间:2023-11-30 01:16:08 24 4
gpt4 key购买 nike

我正在尝试向付款表添加新数据,它应该将金额除以总用户数并且仅添加输入到帐单表中的新数据。然而,它只是每次都添加它们而不是新数据。

有人可以帮我吗?

    DELIMITER //
CREATE TRIGGER `newPayment`
AFTER INSERT ON `bills`
FOR EACH ROW INSERT INTO payments (name, bill, DueDate, Value)
SELECT users.name, bills.Company, bills.billDueDate, bills.Amount/(SELECT COUNT(name) FROM users)
FROM bills, users
WHERE bills.Company=bills.Company AND users.name=users.name
//
DELIMITER ;

最佳答案

您将从帐单表中选择所有记录,因为您没有引用有关触发触发器的行的任何内容

AFTER INSERT 触发器内,有一个名为 NEW 的别名,它引用刚刚插入的行。想必您打算做这样的事情:

WHERE bills.Company=NEW.Company

这将选择“账单”中与您刚刚插入的行中的公司相同的行。

但是,我不知道“用户”在哪里,尽管希望您打算从账单中选择JOIN用户ON某种标准。

关于mysql - 使用计数触发除法金额未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19036702/

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