ホームページ >データベース >mysql チュートリアル >MySql insert插入操作不完全指北_MySQL

MySql insert插入操作不完全指北_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-01 13:31:521087ブラウズ

bitsCN.com

MySql insert插入操作不完全指北

 

1.插入的数据来源自其他表

表A有id, cola 字段

表B有id, cola, colb...等字段,其中id都为主键,cola为相同名字的列

现想将表B中colb>1000的记录都插入表A中,SQL语句可以这样写:

 

[sql] insert into A(id,cola) select id,cola from B where colb>1000  

 

 

2.插入时排除(忽略)重复记录

现表A中有一部分记录了,再做如1中的插入操作可能遇到重复的key导致操作失败

 

[sql] insert ignore into A(id,cola) select id,cola from B where colb>1000  

 

使用insert ignore into插入时,会忽略掉表中已经存在的记录

 

3.插入时遇到重复记录做更新操作

 

还有一个表C,与表B的结构类似,现需将表C中的数据插入A中,当遇到重复的记录时,更新cola这一列为表C中的值

[sql] insert into A(id,cola) select id,cola from C on duplicate key update A.cola=C.cola  

 


bitsCN.com
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。