2017-08-09 61 views
0

我是SQL新手,我有一堆表test1 test2 test3 ---- test100。這些表格每天創建並具有相同的列/格式。我想創建一個應該有1個月過去數據的表格,換句話說,我必須將test1-test30合併到一個表格中。我只能認爲下面的代碼,但我期待的東西高效和容易做到像使用循環或同時conditions..or一些其他的方式SQL Workbench-分表讀取

create table final as 
select * from test1; 
insert into final from test2 
insert into final from test3 
. 
. 
insert into final from test30.. 

您能否提供我一個簡單的方法來做到這一點,而不是使用30個INSERT語句

+0

我想你應該學習分區。沒有理由存儲這麼多不同的表格。 –

回答

0

下面是一個例子:

複製從一個表到另一個表中的所有列:從一個

INSERT INTO table2 
SELECT * FROM table1 
WHERE condition; 

僅複製某些列表到另一個表:

INSERT INTO table2 (column1, column2, column3, ...) 
SELECT column1, column2, column3, ... 
FROM table1 
WHERE condition; 

另一種解決方案是從所有數據庫轉儲中的數據,如果有相同的表,然後將其插入.csv或txt文件並將其導入到你的決賽桌。

Mysql -u [username] -p [database_name] < /path/to/file.[extention]