Articles

PostgreSQL SELECT INTO

Summary: in questo tutorial, imparerete come usare l’istruzione PostgreSQL SELECT INTO per creare una nuova tabella dal risultato di una query.

Se state cercando il modo di selezionare i dati nelle variabili, controllate l’istruzione PL/pgSQL SELECT INTO.

Introduzione all’istruzione PostgreSQL SELECT INTO

L’istruzione PostgreSQL SELECT INTO crea una nuova tabella e inserisce i dati restituiti da una query nella tabella.

La nuova tabella avrà colonne con gli stessi nomi delle colonne del risultato della query. A differenza di una normale dichiarazione SELECT, la dichiarazione SELECT INTO non restituisce un risultato al client.

Il seguente illustra la sintassi dell’istruzione PostgreSQL SELECT INTO:

SELECT select_listINTO new_table_nameFROM table_nameWHERE search_condition;
Code language: SQL (Structured Query Language) (sql)

Per creare una nuova tabella con la struttura e i dati derivati da un insieme di risultati, si specifica il nome della nuova tabella dopo la parola chiave INTO.

La parola chiave TEMP o TEMPORARY è opzionale; permette invece di creare una tabella temporanea.

La parola chiave UNLOGGED se disponibile renderà la nuova tabella una tabella non registrata.

La clausola WHERE permette di specificare le righe delle tabelle originali che dovrebbero essere inserite nella nuova tabella. Oltre alla clausola WHERE, è possibile utilizzare altre clausole nella dichiarazione SELECT per la dichiarazione SELECT INTO come INNER JOINLEFT JOINGROUP BY, e HAVING.

Nota che non puoi usare la dichiarazione SELECT INTO in PL/pgSQL perché interpreta diversamente la clausola INTO. In questo caso, potete usare l’istruzione CREATE TABLE AS che fornisce più funzionalità dell’istruzione SELECT INTO.

PostgreSQL SELECT INTO esempi

Utilizzeremo la tabella film del database di esempio per la dimostrazione.

PostgreSQL SELECT INTO tabella campione

La seguente istruzione crea una nuova tabella chiamata film_r che contiene i film con il rating R e durata del noleggio 5 giorni dalla tabella film.

SELECT film_id, title, rental_rateINTO TABLE film_rFROM filmWHERE rating = 'R'AND rental_duration = 5ORDER BY title;
Code language: SQL (Structured Query Language) (sql)

Per verificare la creazione della tabella, potete interrogare i dati della tabella film_r:

SELECT * FROM film_r;
Code language: SQL (Structured Query Language) (sql)

La seguente dichiarazione crea una tabella temporanea chiamata short_film che contiene i film la cui durata è inferiore a 60 minuti.

Code language: SQL (Structured Query Language) (sql)

Il seguente mostra i dati della tabella short_film:

SELECT * FROM short_film;
Code language: SQL (Structured Query Language) (sql)

In questo tutorial, hai imparato ad usare l’istruzione PostgreSQL SELECT INTO per creare una nuova tabella dal risultato di una query.

  • Questo tutorial è stato utile?
  • SìNo

Lascia una risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *