在MYSQL中使用SELECT INTO
查询之前是否有必要定义新的表定义。
当我写这样的时候,我遇到了执行查询的问题:
SELECT *
INTO newtable
FROM oldtable
WHERE 1=0;
显示的错误是:
Unclalared variabie:newtable
答案 0 :(得分:2)
尝试:
INSERT INTO newtable SELECT ...
尝试:
CREATE TABLE newtable AS SELECT ...
答案 1 :(得分:0)
MySQL手动搜索引擎非常糟糕,但谷歌搜索mysql 5.5 select into
之类的内容通常会将您带到the right page:
MySQL Server不支持SELECT ... INTO TABLE Sybase SQL 延期。相反,MySQL Server支持INSERT INTO ... SELECT 标准的SQL语法,基本上是一样的。
答案 2 :(得分:0)
如果你read the documentation here说:
With INSERT ... SELECT, you can quickly insert many rows into a table from one or many tables
所以,是的,你需要先创建新表。
您可以使用CREATE TABLE new LIKE old
创建一个新的空表,它是原始表结构的副本。