-3

SELECT INTO在MYSQL中使用查询之前是否需要定义新的表定义。

当我这样写时,执行查询时遇到问题:

SELECT *
INTO newtable
FROM oldtable
WHERE 1=0;

显示的错误是:

未声明的变量:newtable

4

3 回答 3

2

如果你有新表

尝试 :

INSERT INTO newtable SELECT ...

如果你没有新表

尝试 :

CREATE TABLE newtable AS SELECT ...
于 2013-11-14T12:25:35.903 回答
0

如果您阅读此处的文档,它会说:

With INSERT ... SELECT, you can quickly insert many rows into a table from one or many tables

所以,是的,您需要先创建新表。

您可以使用它CREATE TABLE new LIKE old来创建一个新的空表,它是原始表结构的副本。

于 2013-11-14T12:24:04.577 回答
0

MySQL 手动搜索引擎很糟糕,但谷歌搜索mysql 5.5 select into通常会将您带到正确的页面

MySQL 服务器不支持 SELECT ... INTO TABLE Sybase SQL 扩展。相反,MySQL Server 支持 INSERT INTO ... SELECT 标准 SQL 语法,这基本上是一样的。

于 2013-11-14T12:23:17.663 回答