Mysql 如何将值增加或减少到另一个表?
我有两张桌子——包和市场。 此时,行李表中有如下数据:Mysql 如何将值增加或减少到另一个表?,mysql,sql,phpmyadmin,Mysql,Sql,Phpmyadmin,我有两张桌子——包和市场。 此时,行李表中有如下数据: 如果我从market表中添加数据,table bag中的qty列将根据market表中输入的金额减少。总价栏将计算总数量市场*价格包根据我的理解,我建议使用触发器 DELIMITER $$ CREATE TRIGGER trg_insert AFTER INSERT ON market begin update bags set qty = ((select qty from bags where id=1)-(select
如果我从market表中添加数据,table bag中的qty列将根据market表中输入的金额减少。总价栏将计算总数量市场*价格包根据我的理解,我建议使用触发器
DELIMITER $$
CREATE TRIGGER trg_insert
AFTER INSERT ON market
begin
update bags set qty = ((select qty from bags where id=1)-(select
market.total_qty from market where
id=1) ))
,price = ((select price from basgs where id=1)-(select market.total_prc
from market where
market.id=1)))
where bags.id = 1;
END$$
DELIMITER $$
现在我使用提供给您的静态值,
试试这个代码
似乎要存储从其他列计算的值?这通常是个坏主意,数据不一致的风险太大了。而是考虑视图或计算列。或者使用触发器进行管理。真的吗?你能给我解决这个问题的方法吗?你需要提供样本数据和期望的结果。你的解释没有你想象的那么清楚。顺便说一下,你的问题的答案是你需要一个触发器。这是错误的,先生您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,以了解在第4行“开始更新行李设置数量=行李数量-选择市场数量-从市场时的总数量”附近使用的正确语法