首页  >  文章  >  后端开发  >  mysql如何合并两张结构相同的数据表?

mysql如何合并两张结构相同的数据表?

WBOY
WBOY原创
2016-12-01 00:25:351709浏览

目前我有两个数据表结构是一样的,现在我想合并两张表成为一张表,但是在phpmyadmin里面好像没找到如何合并的选项,网上也搜了一些合并的sql语句,但是执行之后还是报错,不知道什么原因,有没有其他什么办法可以实现的

<code>INSERT INTO order_zong (Ptname, Name, Mobile, orderdate, orderprice, ordertime) VALUES ( SELECT Ptname, Name, Mobile, orderdate, orderprice, ordertime from hnb);</code>

以上代码报错12个错误,可能方式根本就不对,麻烦高手给个简单的办法

回复内容:

目前我有两个数据表结构是一样的,现在我想合并两张表成为一张表,但是在phpmyadmin里面好像没找到如何合并的选项,网上也搜了一些合并的sql语句,但是执行之后还是报错,不知道什么原因,有没有其他什么办法可以实现的

<code>INSERT INTO order_zong (Ptname, Name, Mobile, orderdate, orderprice, ordertime) VALUES ( SELECT Ptname, Name, Mobile, orderdate, orderprice, ordertime from hnb);</code>

以上代码报错12个错误,可能方式根本就不对,麻烦高手给个简单的办法

如果数据结构一样的话,以下即可:

<code>INSERT INTO `your_table_name`
SELECT *
FROM `destination_table_name`;</code>

INSERT INTO c SELECT FROM a UNION SELECT FROM b

导出sql合并后在导入 哈哈

<code>Insert into Table2(field1,field2,...) select value1,value2,... from Table1</code>

<code>INSERT IGNORE INTO order_zong (Ptname, Name, Mobile, orderdate, orderprice, ordertime) 
       SELECT Ptname, Name, Mobile, orderdate, orderprice, ordertime from hnb;</code>

如果是查表再插入,insert into 后面不用values,而是直接select表。
注:你报错可能是插入的时候出现主键重复

能把错误贴出来吗? 会不会有些字段定义了unique。所以导入唯一性冲突出错了

或者新建立一个表来合并
如果需要去重的话用 union
create table new_table SELECT Ptname, Name, Mobile, orderdate, orderprice, ordertime from order_zong union all SELECT Ptname, Name, Mobile, orderdate, orderprice, ordertime from hnb

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn