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
:
Code language: SQL (Structured Query Language) (sql)SELECT select_listINTO new_table_nameFROM table_nameWHERE search_condition;
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 JOIN
LEFT JOIN
GROUP 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.
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
.
Code language: SQL (Structured Query Language) (sql)SELECT film_id, title, rental_rateINTO TABLE film_rFROM filmWHERE rating = 'R'AND rental_duration = 5ORDER BY title;
Per verificare la creazione della tabella, potete interrogare i dati della tabella film_r
:
Code language: SQL (Structured Query Language) (sql)SELECT * FROM film_r;
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
:
Code language: SQL (Structured Query Language) (sql)SELECT * FROM short_film;
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