Weiter zum Inhalt

Views (virtuelle Tabellen) in SQL

In diesem Tutorial lernst du, was Views sind, welche Typen es gibt und welche Vor- und Nachteile sie mitbringen.
Aktualisiert 18. Sept. 2026  · 6 Min. lesen

Mit KI erkunden

ChatGPTClaudePerplexity

Datenbankadministrator:innen und -nutzende stehen vor zwei Herausforderungen: komplexe SQL-Abfragen schreiben und den Datenbankzugriff absichern. Abfragen werden schnell unübersichtlich, wenn mehrere Joins, Unterabfragen und GROUP BY in einer einzigen Abfrage zusammenkommen.

Um solche Abfragen zu vereinfachen, kannst du eine Art Stellvertreter über der Originaltabelle nutzen. Außerdem will die Datenbankadministration aus Sicherheitsgründen manchmal den Direktzugriff auf die Datenbank einschränken. Enthält eine Tabelle zum Beispiel viele Spalten, die Nutzerin aber braucht nur drei davon, erstellt die DBA eine virtuelle Tabelle mit genau diesen drei Spalten. Für beides eignen sich Views. Views fungieren als Stellvertreter oder virtuelle Tabelle. Sie reduzieren die Komplexität von SQL-Abfragen und ermöglichen einen sicheren Zugriff auf die zugrunde liegenden Tabellen.

Was ist eine View?

Views sind eine besondere Form von Tabellen in SQL. Sie stellen eine virtuelle Tabellenansicht für verschiedene komplexe Operationen bereit. Du kannst Daten aus mehreren Tabellen auswählen oder anhand bestimmter Kriterien gezielt Daten selektieren. Eine View speichert keine echten Daten, sondern nur die Definition der View im Data Dictionary.

\"Views

Eine View ist eine Abfrage, die im Data Dictionary gespeichert ist und die du wie eine Tabelle abfragen kannst. Sie belegt keinen physischen Speicher; lediglich die Abfrage steht im Data Dictionary. Die Ergebnisse werden dynamisch berechnet, sobald eine Abfrage auf der View ausgeführt wird. Änderungen, die über die View vorgenommen werden, spiegeln sich in der zugrunde liegenden Basistabelle wider.

Views erfüllen vor allem zwei Zwecke:

  • Komplexe SQL-Abfragen vereinfachen.
  • Nutzende vom Zugriff auf sensible Daten fernhalten.
\"Views

Arten von Views

  • Einfache View: Eine View, die nur auf einer einzelnen Tabelle basiert und weder GROUP BY noch Funktionen enthält.
  • Komplexe View: Eine View, die auf mehreren Tabellen basiert und GROUP BY-Klauseln sowie Funktionen enthält.

  • Inline-View: Eine View, die auf einer Unterabfrage in der FROM-Klausel basiert. Diese Unterabfrage erzeugt eine temporäre Tabelle und vereinfacht die komplexe Abfrage.

  • Materialized View: Eine View, die neben der Definition auch Daten speichert. Sie legt Daten physisch ab und erstellt so Repliken.

\"Views

Einfache View

\"Views

Komplexe View

\"Views
\"Views

Inline-View

Eine Inline-View ist ein SELECT-Statement in der FROM-Klausel eines anderen SELECT-Statements. So entsteht eine temporäre Tabelle, auf die sich die äußere Abfrage beziehen kann. Inline-Views helfen, komplexe SQL-Abfragen ohne zusätzliche Joins und Unterabfragen zu schreiben. Sie heißt temporär, weil die von der Unterabfrage gelieferten Daten nicht dauerhaft in der Datenbank gespeichert werden. In Oracle und in der Postgres-Community wird diese temporäre Tabelle als Inline-View bezeichnet, oft auch als Subselect.

\"Views

Materialized View

Eine Materialized View speichert die abgerufenen Daten physisch. Diese replizierten Daten lassen sich wiederverwenden, ohne die View erneut auszuführen. Dieser View-Typ wird auch als \"Snapshots\" bezeichnet. Materialized Views verkürzen die Verarbeitungszeit, um große Datenbestände erneut bereitzustellen. Sie helfen Remote-Nutzenden, Daten lokal zu replizieren und die Abfrageleistung zu verbessern. Die Herausforderung besteht darin, Änderungen zwischen Materialized Views und ihren Basistabellen zu synchronisieren.

\"Materialized
\"Views

Vergleich: View vs. Materialized View

\"Views

Views in SQL erstellen und löschen

Views lassen sich mit CREATE VIEW erstellen und mit REPLACE VIEW ersetzen.

\"Views

Eine View kann mit dem Befehl DROP VIEW gelöscht werden.

\"Views

Vor- und Nachteile von Views

Views können als Teilmenge der echten Daten dienen, um bestimmte Operationen durchzuführen. Sie schaffen Abstraktion für unterschiedliche Nutzergruppen und verbergen Komplexität für alle, die Daten aus Tabellen abrufen. Beispiel: Eine Nutzerin darf nur auf bestimmte Spalten zugreifen, nicht auf die ganze Tabelle. Views helfen, komplexe Abfragen zu vereinfachen und den Zugriff auf Daten aus mehreren gejointen Tabellen zu erleichtern. Sie können als Aggregationstabellen mit GROUP BY genutzt werden. Views erhöhen die Sicherheit bzw. schaffen zusätzlichen Mehrwert aus Sicherheitsaspekten. Sie belegen keinen Speicherplatz für Daten, da im Data Dictionary nur die Definition, nicht aber eine Kopie der tatsächlichen Daten liegt.

Neben vielen Vorteilen gibt es auch Nachteile: Abhängigkeit von der Struktur der Basistabellen, Rechenaufwand und gewisse Einschränkungen. Views hängen von der Tabellenstruktur ab. Änderst du die Struktur einer Tabelle, musst du die zugehörige View-Definition anpassen.

Fazit

Glückwunsch, du hast das Ende dieses Tutorials erreicht!

Du hast erfahren, was Views sind, welche Typen es gibt, was hinter einfacher, komplexer, Inline- und Materialized View steckt, wie du Views erstellst und löschst und welche Vor- und Nachteile sie haben.

Setze das Konzept der Views jetzt bei deinen eigenen Datensätzen ein. Danke fürs Lesen!

Wenn du mehr über SQL lernen möchtest, schau dir unseren Kurs Introduction to Relational Databases in SQL an.

Werde Dateningenieur

Werde ein Dateningenieur durch fortgeschrittenes Python-Lernen
Kostenloses Lernen Beginnen
Themen
SQL

SQL-Kurse

Kurs

Datenbearbeitung in SQL

4 Std.
335K
Lerne, mit komplexen SQL-Abfragen diverse Data-Science-Aufgaben zu lösen und Datensätze für Analysen in PostgreSQL vorzubereiten.
Details anzeigenRight Arrow
Kurs Starten
Mehr anzeigenRight Arrow