mysql把A表資料插入到B表資料的幾種方法

2022-03-18 17:02:43 字數 1104 閱讀 5752

web開發中,我們經常需要將乙個表的資料插入到另外乙個表,有時還需要指定匯入字段,設定只需要匯入目標表中不存在的記錄,雖然這些都可以在程式中拆分成簡單sql來實現,但是用乙個sql的話,會節省大量**。下面我以mysql資料庫為例分情況一一說明:

1.如果2張表的字段一致,並且希望插入全部資料,可以用這種方法:

insert into 目標表 select * from **表;

insert into inserttest select * from inserttest2;

2.如果只希望匯入指定字段,可以用這種方法:

insert into 目標表 (欄位1, 欄位2, ...) select 欄位1, 欄位2, ... from **表;(這裡的話字段必須保持一致)

insert into inserttest2(id) select id from inserttest2;

3.如果您需要只匯入目標表中不存在的記錄,可以使用這種方法:

insert into 目標表  

(欄位1, 欄位2, ...)  

select 欄位1, 欄位2, ...  

from **表  

where not exists (select * from 目標表  

where 目標表.比較字段 = **表.比較字段); 

1>.插入多條記錄:

insert into inserttest2

(id,name)

select id,name

from inserttest

where not exists (select * from inserttest2

where inserttest2.id=inserttest.id);

2>.插入一條記錄:

insert into inserttest    

(id, name)    

select 100, 'liudehua'    

from dual    

where not exists (select * from inserttest    

where inserttest.id = 100);

插入資料a表到b表

insert into p web p p.tid,p.title,p.fileurl,p.columnid,p.columnname select l.tid,l.linkname,l.linkurl,3033 as columnid from p link l where l.columnid ...

查詢A表資料插入到B表中 sql

通常使用的插入sql語句大部分是 insert into a a,b,c values 1,2,3 4,5,6 1.同乙個資料庫,a表存在時 在一些特殊的情況下 也可以使用 insert into a a,b,c select a,b,c from b 但是需要注意的是 在這種情況中的 values...

MySQL將表a中查詢的資料插入到表b中

mysql將表a中查詢的資料插入到表b中 假設表b存在 insert into b select from a 假設表b不存在 create table b as select from a 擴充套件 將b表中的某寫字段值插入到a表中 insert into a userid,username se...