Heim > Datenbank > MySQL-Tutorial > Berechnete PostgreSQL-Spalten: Welche Alternativen gibt es?

Berechnete PostgreSQL-Spalten: Welche Alternativen gibt es?

Susan Sarandon
Freigeben: 2025-01-21 17:22:09
Original
322 Leute haben es durchsucht

PostgreSQL Computed Columns: What Alternatives Exist?

Berechnete PostgreSQL-Spalten: Erkundung von Alternativen

PostgreSQL-Benutzer fragen häufig nach der Verfügbarkeit berechneter Spalten, eine Funktion, die in anderen Datenbankverwaltungssystemen wie MS SQL Server häufig vorkommt. Obwohl PostgreSQL berechnete Spalten noch nicht nativ unterstützt, bietet es verschiedene Alternativen, um eine ähnliche Funktionalität zu erreichen.

Speichern generierter Spalten: PostgreSQL 12 und höher

PostgreSQL 12 führt das Konzept der Speicherung generierter Spalten ein, das mit SQL-Standards kompatibel ist und von anderen RDBMS wie DB2, MySQL und Oracle unterstützt wird. Diese Spalten werden mit dem Schlüsselwort STORED erstellt und berechnet, wenn Daten abgerufen oder eingefügt werden.

CREATE TABLE tbl (
  int1    int
, int2    int
, product bigint GENERATED ALWAYS AS (int1 * int2) STORED
);
Nach dem Login kopieren

Virtuell generierte Spalten: PostgreSQL 11 und früher

Für PostgreSQL 11 und früher werden echte virtuell generierte Spalten nicht unterstützt. Der Benutzer kann sein Verhalten jedoch mithilfe von Funktionen mit Attributnotation simulieren. Diese Methode beinhaltet die Verwendung der tbl.col-Syntax, die das Aussehen und die Funktionalität einer virtuell generierten Spalte nachahmt.

CREATE FUNCTION col(tbl) ... AS ...  -- 您的计算表达式在此处
Nach dem Login kopieren
SELECT tbl.*, col(tbl) FROM tbl;
Nach dem Login kopieren

Alternativen

Zusätzlich zu den oben genannten Methoden können PostgreSQL-Benutzer auch andere Methoden in Betracht ziehen, um ähnliche Funktionen zu erreichen:

  • Ansichten: Ansichten können verwendet werden, um virtuell generierte Spalten zu erstellen, sodass Benutzer sie in SELECT *-Abfragen auswählen können.
  • Ausdrucksindizes: Diese Indizes können für Funktionen erstellt werden, die abgeleitete Werte berechnen, was Leistungsvorteile für Abfragen mit diesen Werten bietet.
  • Materialisierte Ansicht: Die materialisierte Ansicht speichert die Ergebnisse einer Abfrage und stellt eine Momentaufnahme der Daten zu einem bestimmten Zeitpunkt bereit.
  • Trigger:Trigger können verwendet werden, um abgeleitete Werte zu aktualisieren oder in eine Tabelle einzufügen.

Auch wenn PostgreSQL derzeit möglicherweise keine nativen berechneten Spalten unterstützt, bietet sein flexibler und leistungsstarker Funktionsumfang verschiedene Lösungen zur Implementierung ähnlicher Funktionen, um den unterschiedlichen Anforderungen seiner Benutzer gerecht zu werden.

Das obige ist der detaillierte Inhalt vonBerechnete PostgreSQL-Spalten: Welche Alternativen gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage