2014-11-08 152 views
0

我一直很容易使用 SELECT * INTO newtable IN 'another_database' FROM original_table_in_separate_database; 在MSSQL中轻松地将数据从一张表备份到另一张表。SELECT INTO等价于mysql

现在我正在移动到MYSQL,并且无法完成此任务,因为此功能在MYSQL中不可用。

虽然CREATE TABLE ... SELECT可以以某种方式完成相同数据库中的任务,但不能使用两个不同的数据库。

请帮我,如果有任何想法:)

在此先感谢。

+0

只需使用'database.tablename'作为'create table'子句。 – 2014-11-08 17:34:10

回答

3

您可以使用INSERT INTO .. SELECT FROM构造像

INSERT INTO db1.dbo.newtable 
SELECT * FROM db2.dbo.original_table_in_separate_database; 

注意点:对于INSERT INTO .. SELECT工作两个目标表和插入表必须存在。否则,使用CREATE TABLE AS ... SELECT就像

CREATE TABLE newtable 
AS 
SELECT * FROM db2.dbo.original_table_in_separate_database; 
+0

我正在谈论不同的数据库..但INSERT INTO..SELECT是为同一个数据库..表应该存在。 – 2014-11-08 17:31:31

+1

不,它们也可以用于不同的数据库。请参阅答案中的示例。在答案中,db1和db2代表两个不同的数据库。 – Rahul 2014-11-08 17:34:11

+0

还是让我看到它:) – 2014-11-08 17:35:15