2013-03-18 329 views
1

我不知道爲什麼我得到這個錯誤,我想今天上午我跑這個查詢沒有錯誤,它的工作..我試圖合併兩個不同的表放到一個表中,這些表具有相同的字段,但具有不同的值。無法創建表#1113 - 一個表必須至少有一列

我使用:

create table jos_properties_merged engine = MERGE UNION = 
(mergecasas.jos_properties_contacts,viftestdb.buu_properties_contacts); 

,我得到

"#1113 - A table must have at least 1 column " 

你知道我做錯了嗎?

回答

2

根據this link你需要指定完全相同的列中存在的2個表:

CREATE TABLE T1( 一個INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 消息CHAR(20))ENGINE = MyISAM數據;創建表t2( a INT NOT NULL AUTO_INCREMENT PRIMARY KEY, message CHAR(20))ENGINE = MyISAM; ('測試'),('表'),('t1'); mysql> INSERT INTO t2 (message)VALUES('Testing'),('table'),('t2');

CREATE TABLE 總( - >一個INT NOT NULL AUTO_INCREMENT, - >消息CHAR(20),INDEX(a))的 - > ENGINE = MERGE UNION =(T1,T2)INSERT_METHOD = LAST;

+1

好,我發誓,我今天早上遇到此查詢和我創建了一個合併表,沒有specifiyng所有列...必須有一些其他的方式,真正 – ol30cean0 2013-03-18 23:03:18

+0

......這個作品! create table students_merged as select * from db1.students_contacts; insert ignore into students_merged select * from db2.students_contacts; – ol30cean0 2013-03-19 00:54:19

+0

啊,不錯!很高興你有一個解決方案,這是重要的 – Sebas 2013-03-19 00:59:04

相關問題