2012-04-04 3 views
0

다음 2 개의 테이블을 가지고 있는데, table2의 내용을 취하여 table1의 끝에 추가하려고합니다 (예 : 2 개의 테이블을 1로 결합). ID가 계속 자동 증가하도록하고 싶습니다.MySQL - 2 개의 유사한 테이블 결합하기

표 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; 

들으

+1

는 오류 또는 당신이 당신은 당신의 SQL 구문에 오류가 –

+0

을 기대하고있어, 'SELECT 국가, 도시, 위도, 경도 FROM extra'2 번 라인 근처에서 사용할 올바른 구문에 대해서는 MySQL 서버 버전에 해당하는 설명서를 확인하십시오. – Adam

+0

값이 필요하지 않다고 생각합니다. –

답변

0

다음과 같은 값을 입력하지 마십시오. check this

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

이 하나

시도
INSERT INTO world (country, city, latitude, longitude) 
    SELECT country, city, latitude, longitude FROM extra; 
관련 문제