mysql insere dados de uma tabela em outra tabela

Código de implementação para inserir dados de uma tabela em outra tabela no MySql
 
Um projeto da empresa, fazendo relatórios - são muitas estruturas de tabelas para serem relacionadas, e finalmente decidiu coletar os dados para serem usados ​​em uma nova tabela. A seguinte sintaxe SQL precisa ser usada... Compartilhe:
No desenvolvimento web, muitas vezes precisamos inserir dados de uma tabela em outra tabela. Às vezes, também precisamos especificar campos de importação. Para configurar, precisamos apenas importar registros que não existem na tabela de destino. Embora estes possam ser divididos em SQL simples no programa. Implementação, mas usar um sql economizará muito código. Abaixo vou explicar um por um usando o banco de dados mysql como exemplo:
 
1. Se os campos das duas tabelas forem consistentes e você quiser inserir todos os dados, você pode usar este método:
?
1
2
INSERT INTO 目标表 SELECT * FROM 来源表;
insert into insertTest select * from insertTest2;

 

 
2. Se desejar importar apenas campos especificados, você pode usar este método:
?
1
2
INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;(这里的话字段必须保持一致)
    insert into insertTest2(id) select id from insertTest2;

 

 
3. Se precisar importar apenas registros que não existem na tabela de destino, você pode usar este método:
   
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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);

Acho que você gosta

Origin blog.csdn.net/linwei_hello/article/details/38234841
Recomendado
Clasificación