
以mysql数据库为例分情况一一说明:两张表:insertTest和insertTest2,前者中有测试数据
create table insertTest(id int(4),name varchar(12));
insert into insertTest values(100,'liudehua');
insert into insertTest values(101,'zhourunfa');
insert into insertTest values(102,'zhouhuajian');
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 insertTest2id=insertTestid);
2>插入一条记录:
insert into insertTest
(id, name)
SELECT 100, 'liudehua'
FROM dual
WHERE not exists (select from insertTest
where insertTestid = 100);
使用 dual 作表名,select 语句后面直接跟上要插入的字段的值。
4将查询出来的数据并同其他变量一起插入新的数据表中
insert into t_supp_PurchPlan_s(PurPlanCode,itemcode,Speccode) select 'hello'as PurPlanCode,itemcode,speccode from b_item where id=8
直接将变量放到相应的位置即可(如上将固定的变量或动态变量放入即可)
这种方法导入数据有点笨,但对于我这样的菜鸟很容易接受。
首先我们肯定有一个excel的文件,文件中有大量的数据,每一列代表着不同的字段。
我们首先建立一个数据库,然后在库中建立表,表的每个字段对应excel中的每一列。
一、假如excel中有四列数据,希望导入到数据库中 mytable 中,对应的字段分别为field1,field2,field3,field4
二、在excel表格中增加一列(excel应该是E列),利用excel的公式自动生成SQL语句(这个很重要,别写错了),具体方法 如下:
1、增加一列(excel应该是E列,因为我们原有4列数据,分别为A\B\C\D列)
2、在第一行(这一行必须为有效数据行否则出错)的E列,就是E1中输入公式=CONCATENATE("insert into table (field1,field2,field3,field4) values ('",A1,"','",B1,"','",C1,"','",D1,"');")
3、此时E1已经生成如下的SQL语句: insert into mytable (field1,field2,field3、field4) values ('A1中 的数据','B1','C1','D1');
4、将E1的公式复制到所有行的E列,(就是用鼠标点住E1单元格的右下角,一直拖拽下去,到最后一行数据)
5、此时E列已经生成了所有的SQL语句
6、选中E列把E列数据复制到一个纯文本文件中,命名为 例如:exceltxt
三、把exceltxt 放到数据库中运行即可,可通过命令行导入
source f:\exceltxt
1将选中的数据快儿拷贝到一个TXT文本文件中(记得把后面的空格消掉。否则导入数据库后会有对应的空行),假如存到“D:\datatxt”这个位置里。
2根据要导入的数据快儿建立MySql数据库和表,然后进入命令提示符里使用命令
load data local infile 'D:/datatxt' into table exceltomysql fields terminated by '\t';
注意:盘符我使用的“/”才成功,否则提示找不到文件。
以上就是关于Mysql 怎样将一个数据库中表 数据 插入到 另一个数据库 表中全部的内容,包括:Mysql 怎样将一个数据库中表 数据 插入到 另一个数据库 表中、如何将excel表格的数据导入到mysql数据中去、如何把表格导入mysql数据库中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)