MYSQL插入方法

 我们常见的插入方法一般有这几种,普通插入语句插入或更新插入或替换插入或忽略,应用在不同的场景中,在功能方面呢也会有所不同。

1.普通插入语句

insert into table ('a','b','c','d') values ('1','2','3','4');

2、插入或更新 

 如果我们希望插入一条新记录(INSERT),但如果记录已经存在,就更新该记录,此时,可以使用"INSERT INTO … ON DUPLICATE KEY UPDATE …"语句:

情景示例:这张表存了用户历史充值金额,如果第一次充值就新增一条数据,如果该用户充值过就累加历史充值金额,需要保证单个用户数据不重复录入。

这时可以使用"INSERT INTO … ON DUPLICATE KEY UPDATE …"语句。

注意事项:"INSERT INTO … ON DUPLICATE KEY UPDATE …"语句是基于唯一索引或主键来判断唯一(是否存在)的。如下SQL所示,需要在username字段上建立唯一索引(Unique),transId设置自增即可。

-- 用户张三充值了30元
INSERT INTO transaction (transId,username,amount,transTime,remark) 
   VALUES (null, '张三', 30, '2020-06-20 20:00:20', '会员充值') 
   ON DUPLICATE KEY UPDATE amount=amount + 30,transTime='2020-06-20 20:00:20',remark
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值