mysql批量更新优化之触发器
需要以A表的更新来同步刷新B表的数据.B表是1个大表.记录行数比是A表的10倍.
已有的同步更新方式,
update product.order_list a left join product.user b on a.email=b.email set a.lastlogin=b.lastlogin;
改进以后的同步更新方式:每当A表有更新时,即利用触发器同步更新B表的记录.联接列由email改成uid
触发器脚本:
DELIMITER $$
CREATE TRIGGER user_update BEFORE UPDATE ON product.user FOR EACH ROW
BEGIN
IF NEW.lastlogin<>OLD.lastlogin THEN
UPDATE product.order_list r SET r.lastlogin= New.lastlogin WHERE r.uid= NEW.uid;
END IF;
END $$
DELIMITER ;
阅读(4177) | 评论(0) | 转发(0) |