在mysql中选择进入

在mysql中选择进入,mysql,sql,sql-server,Mysql,Sql,Sql Server,我是一个MSSQL用户,现在我正在将我的数据库转换为MySQL。我正在MySQL中编写以下查询: select * into new_tbl from tbl 我得到以下错误 Error : Undeclared variable new_tbl 在MySQL中如何正确编写这样的查询?在MySQL中,应该是这样的 INSERT INTO this_table_archive (col1, col2, ..., coln) SELECT col1, col2, ..., coln FROM t

我是一个MSSQL用户,现在我正在将我的数据库转换为MySQL。我正在MySQL中编写以下查询:

select * into new_tbl from tbl
我得到以下错误

Error : Undeclared variable new_tbl

在MySQL中如何正确编写这样的查询?

在MySQL中,应该是这样的

INSERT INTO this_table_archive (col1, col2, ..., coln)
SELECT col1, col2, ..., coln
FROM this_table
WHERE entry_date < '2011-01-01 00:00:00';
插入此表存档(col1、col2、…、coln)
选择col1、col2、…、coln
从这张桌子
其中录入日期<'2011-01-01 00:00:00';

使用创建表选择语法


细微的差别。在这种情况下,表必须存在。对于
选择进入
,它不会。事实上,我认为这是一个错误。因此,这个解决方案应该以复制表模式的语句作为开头。正如paxdiablo所说,这需要插入的表已经存在。OP用于为您创建表的MSSQL语法。可能没有回答OP的问题,但幸运的是,这正是我要查找的。SELECT INTO命令创建新表,并可以将数据从一个数据库复制到另一个数据库。正确的语法是:CREATE table new_tbl AS SELECT*from orig_tbl;创建。。。选择works,这应该是可接受的答案。“AS”关键字显然是可选的,SELECT INTO不适用于MySQL。强调它不会创建索引!
CREATE TABLE new_tbl SELECT * FROM orig_tbl;