MySQL - 结合2个相似的表

时间:2012-04-04 10:18:40

标签: mysql

我有以下2个表,我想获取table2的内容并将其添加到table1的末尾(例如:将2个表合并为1个)。希望ID继续自动增加。

表1:

 CREATE TABLE IF NOT EXISTS `world` (
   `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
   `country` varchar(2) DEFAULT NULL,
   `region1` varchar(60) DEFAULT NULL,
   `region2` varchar(60) DEFAULT NULL,
   `region3` varchar(60) DEFAULT NULL,
   `zip` varchar(10) DEFAULT NULL,
   `city` varchar(60) DEFAULT NULL,
   `latitude` double DEFAULT NULL,
   `longitude` double DEFAULT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=5871647 ;

表2:

 CREATE TABLE IF NOT EXISTS `extra` (
   `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
   `country` varchar(2) DEFAULT NULL,
   `city` varchar(60) DEFAULT NULL,
   `latitude` double DEFAULT NULL,
   `longitude` double DEFAULT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=687421 ;

玩过以下内容:

INSERT INTO world (country, city, latitude, longitude) 
VALUES SELECT country, city, latitude, longitude FROM extra;

THX

2 个答案:

答案 0 :(得分:2)

试试这个

INSERT INTO world (country, city, latitude, longitude) 
    SELECT country, city, latitude, longitude FROM extra;

答案 1 :(得分:0)

尝试没有下面的值。 check this

INSERT INTO world (country, city, latitude, longitude) 
SELECT country, city, latitude, longitude FROM extra;