SQL更新部分字段或者插入新資料

2021-09-20 12:00:30 字數 1712 閱讀 4852

sql更新部分字段或者插入新資料

因為業務的原因,一張表的資料需要整合兩張外來鍵關聯不強的表資料,這裡涉及到更新部分字段或者插入新資料。今天簡單的做個筆記,後續有需要再補充完整

測試表結構:

create table `test` (

`id` int(10) not null,

`name` varchar(255) collate utf8_unicode_ci default null,

`udex` int(10) default null,

primary key (`id`)

) engine=innodb default charset=utf8 collate=utf8_unicode_ci;

1執行以下sql:

insert into test2.test (id,name,udex) (select 12,3 from tb_alter_plan_log group by ui_student_id) on duplicate key update name= values(name);

1執行結果:

2執行以下sql:

insert into test2.test (id,udex) (select 12,3 from tb_alter_plan_log group by ui_student_id) on duplicate key update udex = values(udex);

2執行結果:

3執行以下sql:

insert into test2.test (id,name,udex) (select 13,6,6 from tb_alter_plan_log group by ui_student_id) on duplicate key update name= values(name),udex = values(udex);

3執行結果:

4執行以下sql:

insert into test2.test (id,name) (select 13,8 from tb_alter_plan_log group by ui_student_id) on duplicate key update name = values(name);

4執行結果:

5執行以下sql:

insert into test2.test (id,udex) (select 13,8 from tb_alter_plan_log group by ui_student_id) on duplicate key update udex = values(udex);

5執行結果:

更新部分字段或者插入新資料

因為業務的原因,一張表的資料需要整合兩張外來鍵關聯不強的表資料,這裡涉及到更新部分字段或者插入新資料。今天簡單的做個筆記,後續有需要再補充完整 測試表結構 create table test id int 10 not null,name varchar 255 collate utf8 unico...

MySQL更新或者插入SQL語句

對於下面這張表 create table aaa a int 11 not null,b int 11 default null,c int 11 default null,primary key a engine innodb default charset utf8 執行兩次以下sql語句 in...

jpa 動態sql 部分更新表字段

transactional modifying clearautomatically true query value update info p set p.status 1 where p.id 2 nativequery true int updatestatusbyid string sta...