Domanda

Quando provo ad eseguire query seguente:

SELECT id_subscriber
  INTO newsletter_to_send
  FROM subscribers 

ottengo un errore:

  

# 1327 - variabile non dichiarata: newsletter_to_send

Cosa c'è di sbagliato con quella query?

È stato utile?

Soluzione

INSERT ... SELECT

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

INSERT INTO newsletter_to_send
SELECT id_subscriber FROM subscribers 

PS: Sei sicuro non è necessario nella clausola WHERE

Altri suggerimenti

MySQL non supporta la sintassi SELECT ... INTO ....

È necessario utilizzare la sintassi INSERT INTO ... SELECT .. per raggiungere lì.

Per saperne di più qui .. http: //dev.mysql .com / doc / refman / 5.0 / it / insert-select.html

Penso che si possa seguire il mio lasciato il posto e spero che sarò in grado di risolvere il problema.

Al primo utilizzo questo comando SQL per creare una nuova tabella in cui si desidera prendere il backup

CREATE TABLE destination_table_name LIKE source_table_name;

Dopo di allora è possibile utilizzare questo comando per copiare tali dati

INSERT INTO destination_table_name
SELECT * FROM source_table_name;

Se si dispone già di dati precedenti nella tabella Destinazione, In primo luogo è possibile utilizzare questo comando

TRUNCATE TABLE destination_table_name; 

Grazie By Md. Hossain Maruf

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

MySql non supporta SELECT INTO [table]. Supporta solo SELECT INTO [variable] e può fare solo questo una variabile alla volta.

Quello che possono fare, tuttavia è utilizzare il CREATE TABLE sintassi con un SELECT in questo modo:

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

Ho provato a lavorare su questo solo ora e questo funziona per me:

CREATE TABLE New_Table_name
SELECT * FROM Original_Table_name;

MySQL Server non supporta l'estensione SELECT ... INTO TABLE Sybase SQL. Invece, MySQL Server supporta INSERT INTO ... SELECT sintassi SQL standard, che è fondamentalmente la stessa cosa. Vedere la Sezione 12.2.5.1, “INSERT ... SELECT sintassi”.

Ref: - questo

MySQL non supportano SELECT ... INTO ... la sintassi,

se si tratta di una nuova tabella, utilizzare CREATE TABLE ... SELECT ... sintassi.

Esempio:

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;

Per saperne di più qui creare-table-selezionare

MySql non supporta SELECT INTO [table]. Supporta solo SELECT INTO [variable] e può fare solo questa variabile alla volta.

Cosa si può fare, tuttavia, è utilizzare la sintassi CREATE TABLE con un SELECT in questo modo:

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top