Inhaltsverzeichnis
PostgreSQL ist eine der Datenbank-Engines, die die Standards von . am besten erfüllt ANSI-SQLDarüber hinaus geht es weiter, indem es neue Funktionen und Konstruktoren anbietet, die von einfachen Verknüpfungen zum Ausführen von Abfragen bis hin zu unerwarteten Elementen reichen, die es ermöglichen, die Grenzen dessen, was eine SQL-Anweisung sein kann, zu überschreiten.Ansichten
Wie die meisten relationalen Datenbanken PostgreSQL hat Unterstützung für Ansichten, jedoch im Gegensatz zu SQL Server und MySQL, sind die Ansichten in PostgreSQL nicht automatisch aktualisierbar, ohne auf Trigger des Typs zurückzugreifen ANSTATT, auf diese Weise mit der Verwendung von TRIGGERS passt es sich an und ist näher am Standard.
Dies hat den Vorteil, dass wir eine bessere Kontrolle über die Ansichten und die Art und Weise haben, in der die Tabellen, die die Informationen liefern, aktualisiert werden.
Sehen wir uns im folgenden Bild ein Beispiel an, wie Sie eine Ansicht in erstellen PostgreSQL mit seinen besonderen Eigenschaften:
Lassen Sie uns die nummerierten Punkte des Beispielbildes erklären, damit wir uns das Thema genauer ansehen können.
- Behandeln Sie das Löschen mit Anweisungen LÖSCHENlöscht es nur den Datensatz, der demselben Schlüssel wie der alte Datensatz entspricht.
- Verarbeitet Dateneinfügungen.
- Nur aktualisieren, wenn mindestens eine der Tabellenspalten Fakten Es wurde geändert.
- Aktualisierungen verwalten, verwenden Sie den ALTEN oder alten Datensatz, um zu bestimmen, welche Datensätze gelöscht oder mit den Daten aus dem NEUEN oder neuen Datensatz aktualisiert werden sollen.
CREATE TRIGGER trip_01_vw_facts_ins_upd_del STATT EINFÜGEN ODER AKTUALISIEREN ODER LÖSCHEN AUF census.vw_facts FÜR JEDE ZEILE AUSFÜHRUNGSVERFAHREN census.trig_vw_facts_ins_upd_del ();
Auf diese Weise erhalten die Tabellen, aus denen sie besteht, die Daten, wenn wir unsere Ansicht einfügen, ändern oder löschen. Sehen wir uns eine Beispielabfrage an:
UPDATE census.vw_facts SET yr = 2012 WO yr = 2011 AND tract_id = '25027761200';
Was würde uns ein erfolgreiches Ergebnis liefern: Abfrage erfolgreich zurückgegeben: 51 betroffene Zeilen, 21 ms Ausführungszeit.
Fenster
Das Fenster sind eine ANSI-SQL-Standardfunktion, die von PostgreSQL, dies ermöglicht es uns, die Daten zu sehen und zu verwenden, die über den aktuellen Datensatz hinausgehen, ohne diese Funktionen müssten wir tun BEITRETEN Ja Unterabfragen um die Daten und Ressourcen auf viel komplexere Weise zu erhalten.
Das folgende Beispiel besteht darin, den Wert zu erhalten Durchschnitt einer Spalte in einer Tabelle sehen wir uns das Beispiel in der folgenden Abbildung an:
Wie wir mit der AVG-Funktion sehen konnten, können wir die Werte aller Felder abrufen, ohne JOINS und die Funktion ausführen zu müssen ÜBER lass uns daraus eine Funktion machen Fenster. Wenn PostgreSQL also eine Funktion dieses Typs sieht, scannt es alle Zeilen, die der WHERE-Klausel entsprechen, um das Ergebnis zu erhalten.
Damit haben wir das Tutorial beendet, mit dem wir ein wenig mehr lernen konnten PostgreSQL Es behandelt die Standard-ANSI-SQL-Funktionen und sieht, wie es seinen eigenen Stil hinzufügt, um die Nützlichkeit dieser Funktionen zu erweitern.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben