注册
登录
需求:
在向一张表中插入数据时 如果对应的数据存在了 则更新数量 不做新增操作,如果不存在则新增数据
分析:
给表中条件创建唯一索引,新增数据时使用 insert into .... on duplicate key update 需要更新的字段=原始字段值+values(新的字段值)
CREATE TABLE orders2 (
id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT ,
amount DECIMAL(10,2)
);
添加索引(也可以在创建表时直接添加)
ALTER TABLE orders2 ADD UNIQUE INDEX (user_id);
添加数据
INSERT INTO orders2 (user_id, amount) VALUES (1, 100)
ON DUPLICATE KEY UPDATE amount = amount + VALUES(amount);