时间:2021-05-24
1.插入的数据来源自其他表
表A有id, cola 字段
表B有id, cola, colb...等字段,其中id都为主键,cola为相同名字的列
现想将表B中colb>1000的记录都插入表A中,SQL语句可以这样写:
复制代码 代码如下:
insert into A(id,cola) select id,cola from B where colb>1000
2.插入时排除(忽略)重复记录
现表A中有一部分记录了,再做如1中的插入操作可能遇到重复的key导致操作失败
复制代码 代码如下:
insert ignore into A(id,cola) select id,cola from B where colb>1000
使用insert ignore into插入时,会忽略掉表中已经存在的记录
3.插入时遇到重复记录做更新操作
还有一个表C,与表B的结构类似,现需将表C中的数据插入A中,当遇到重复的记录时,更新cola这一列为表C中的值
复制代码 代码如下:
insert into A(id,cola) select id,cola from C on duplicate key update A.cola=C.cola
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
MySQL批量插入数据脚本#!/bin/bashi=1;MAX_INSERT_ROW_COUNT=$1;while[$i-le$MAX_INSERT_ROW_C
MySQL当记录不存在时插入(insertifnotexists)在MySQL中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这
1、insert方法,该方法包含两个参数,第一个参数为插入的位置参数,第二个参数为插入内容a=[0,0,0]b=[1,2,3]a.insert(0,b)prin
mysql记录不存在时插入在MySQL中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才
目录特点保存策略自增值的确定自增值的修改执行过程带来的问题自增锁加锁策略批插入的优化insert...select前后操作同一个表会用到临时表最后总结MySQL