SELECT INTO and “Undeclared variable” error

走远了吗. 提交于 2019-11-27 13:52:38
INSERT ... SELECT

http://dev.mysql.com/doc/refman/5.1/en/insert-select.html

INSERT INTO newsletter_to_send
SELECT id_subscriber FROM subscribers 

PS: are you sure you don't need in WHERE clause?

MySQL does not support the SELECT ... INTO ... syntax.

You have to use the INSERT INTO ... SELECT .. syntax to accomplish there.

Read more here.. http://dev.mysql.com/doc/refman/5.0/en/insert-select.html

I think you can follow my given way and hopefully you will be able to fix your problem.

At first use this sql command to create a new table where you want to take backup

CREATE TABLE destination_table_name LIKE source_table_name;

After then you can use this command to copy those data

INSERT INTO destination_table_name
SELECT * FROM source_table_name;

If you already have previous data in your Destination table , Firstly you can use this command

TRUNCATE TABLE destination_table_name; 

Thanks By Md. Maruf Hossain

CREATE TABLE table_name
AS  
SELECT ...(your select)

MySQL does not support SELECT INTO [table]. It only supports SELECT INTO [variable] and can only do this one variable at a time.

What you can do, however is use the CREATE TABLE syntax with a SELECT like so:

CREATE TABLE bar ([column list]) SELECT * FROM foo;
user2365440

I tried working on this just now and this works for me:

CREATE TABLE New_Table_name
SELECT * FROM Original_Table_name;

MySQL Server doesn't support the SELECT ... INTO TABLE Sybase SQL extension. Instead, MySQL Server supports the INSERT INTO ... SELECT standard SQL syntax, which is basically the same thing. See Section 12.2.5.1, “INSERT ... SELECT Syntax”.

Ref:- this

mysql don't support SELECT ... INTO ... syntax,

if it's a new table, use CREATE TABLE ... SELECT ... syntax.

example:

CREATE TABLE artists_and_works
  SELECT artist.name, COUNT(work.artist_id) AS number_of_works
  FROM artist LEFT JOIN work ON artist.id = work.artist_id
  GROUP BY artist.id;

read more here create-table-select

siddu

MySQL does not support SELECT INTO [table]. It only supports SELECT INTO [variable] and can only do this one variable at a time.

What you can do, however is use the CREATE TABLE syntax with a SELECT like so:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!