Vai al contenuto principale

View (tabelle virtuali) in SQL

In questo tutorial scoprirai cosa sono le view, i diversi tipi disponibili e i pro e contro del loro utilizzo.
Aggiornato 29 set 2026  · 6 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Gli amministratori di database e gli utenti dei database affrontano due sfide: scrivere query SQL complesse e mettere in sicurezza l’accesso al database. A volte le query SQL diventano più complicate per l’uso di più join, subquery e di GROUP BY in un’unica query.

Per semplificare queste query, puoi usare una sorta di proxy rispetto alla tabella originale. Inoltre, a volte per motivi di sicurezza l’amministratore del database vuole limitare l’accesso diretto al database. Per esempio, se una tabella contiene varie colonne ma all’utente servono solo tre colonne di dati, il DBA creerà una tabella virtuale di tre colonne. Per entrambi gli scopi puoi usare le view. Le view possono funzionare come un proxy o come una tabella virtuale. Le view riducono la complessità delle query SQL e forniscono un accesso sicuro alle tabelle sottostanti.

Che cos’è una view?

Le view sono una versione speciale delle tabelle in SQL. Forniscono un ambiente di tabella virtuale per varie operazioni complesse. Puoi selezionare dati da più tabelle oppure puoi selezionare dati specifici in base a determinati criteri nelle view. Non contengono i dati effettivi; mantengono solo la definizione della view nel data dictionary.

View (tabelle virtuali) in SQL

La view è una query memorizzata nel data dictionary, sulla quale l’utente può interrogare proprio come fa sulle tabelle. Non usa memoria fisica, viene memorizzata solo la query nel data dictionary. Viene calcolata dinamicamente ogni volta che l’utente esegue una query su di essa. Le modifiche effettuate in qualsiasi punto della view si riflettono nella tabella di base effettiva.

La view ha principalmente due scopi:

  • Semplificare le query SQL complesse.
  • Imporre restrizioni agli utenti nell’accesso a dati sensibili.
Tutorial sulle view (tabelle virtuali) in SQL

Tipi di view

  • Simple View: Una view basata su una sola tabella, che non contiene la clausola GROUP BY né funzioni.
  • Complex View: Una view basata su più tabelle, che contiene la clausola GROUP BY e funzioni.

  • Inline View: Una view basata su una subquery nella clausola FROM, la quale crea una tabella temporanea e semplifica la query complessa.

  • Materialized View: Una view che memorizza sia la definizione sia i dati. Crea repliche dei dati memorizzandoli fisicamente.

Tutorial sulle view (tabelle virtuali) in SQL

Simple View

Tutorial sulle view (tabelle virtuali) in SQL

Complex View

View (tabelle virtuali) in SQL
Tutorial sulle view (tabelle virtuali) in SQL

Inline View

Un’inline view è un’istruzione SELECT nella clausola FROM di un’altra istruzione SELECT per creare una tabella temporanea che può essere referenziata dalla SELECT. Le inline view sono usate per scrivere query SQL complesse senza operazioni di join e subquery. Si parla di tabella temporanea perché una copia duplicata dei dati restituiti dalla subquery memorizzata non viene salvata nel database. Nella community Oracle e Postgres, questa tabella temporanea è chiamata inline view. Viene anche chiamata subselect.

Tutorial sulle view (tabelle virtuali) in SQL

Materialized View

La materialized view replica fisicamente i dati recuperati. Questi dati replicati possono essere riutilizzati senza eseguire di nuovo la view. Questo tipo di view è noto anche come "SNAPSHOT". Le materialized view riducono il tempo di elaborazione per rigenerare l’intero set di dati. Aiutano gli utenti remoti a replicare localmente i dati e a migliorare le prestazioni delle query. La parte impegnativa qui è sincronizzare le modifiche nelle tabelle sottostanti delle materialized view.

Materialized view (tabelle virtuali) in SQL
Tutorial sulle view (tabelle virtuali) in SQL

Confronto tra view e materialized view

Tutorial sulle view (tabelle virtuali) in SQL

Creare e eliminare una view in SQL

Le view possono essere create e sostituite usando CREATE VIEW e REPLACE VIEW.

Tutorial sulle view (tabelle virtuali) in SQL

Le view possono essere eliminate usando il comando DROP VIEW.

Tutorial sulle view (tabelle virtuali) in SQL

Pro e contro delle view

Le view possono essere utilizzate come un sottoinsieme dei dati reali per eseguire determinate operazioni. Ci aiutano a fornire un’astrazione a vari utenti o a nascondere la complessità per gli utenti che accedono ai dati dalla tabella. Per esempio, un utente ha il permesso di accedere a particolari colonne di dati invece che all’intera tabella. Possono aiutarci a semplificare query complesse in una più semplice. Semplificano anche l’accesso ai dati da più tabelle collegate con join. Possono essere usate come tabelle aggregate tramite operazioni di group by. Le view possono essere utilizzate per motivi di sicurezza o aggiungere valore extra dal punto di vista della sicurezza. Non occupano spazio perché contengono solo la definizione nel data dictionary, non una copia dei dati effettivi.

Oltre ai molti vantaggi, le view presentano anche alcuni svantaggi come la dipendenza dalla struttura della tabella di base, i tempi di calcolo e alcune restrizioni. Le view dipendono dalla struttura della tabella. Se cambi la struttura della tabella, allora devi modificare la definizione della view associata.

Conclusione

Complimenti, sei arrivato alla fine di questo tutorial!

In questo tutorial hai visto molti dettagli sulle view. Hai imparato cosa sono le view, i tipi di view, Simple View, Complex View, Inline View, Materialized View, la sintassi per creare ed eliminare le view e i pro e contro delle view.

Ora metti in pratica il concetto di view per analizzare i tuoi dataset. Grazie per aver letto questo tutorial!

Se vuoi imparare di più su SQL, segui il nostro corso Introduction to Relational Databases in SQL.

Argomenti
SQL

Corsi SQL

Corso

Manipolazione dei dati in SQL

4 ore
338.9K
Padroneggia query SQL complesse per rispondere a varie domande di Data Science e preparare dataset solidi da analizzare in PostgreSQL.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Mostra AltroMostra Altro