Join- und split-Funktionen mit SQL

Das PL/SQL-Benutzerhandbuch gibt an, dass man immer ein Package deklarieren muss, das einen REF CURSOR definiert. Die Datenbank legt dies allerdings bereits als SYS_REFCURSOR im Package STANDARD fest. Der PL/SQL-Code dürfte nicht schwer zu verstehen sein. Für den Ausgabestring und die Eingabespalte wurde eine Grenze von 32.767 Zeichen festgelegt.

Da alle Datentypen automatisch in Zeichenketten konvertiert werden können, kann man im Cursor jeden beliebigen Datentyp verwenden – solange es sich um nur eine Spalte handelt. Ein Beispiel:

Es gibt noch einen zusätzlichen Vorteil: Da der Cursor Teil des SQL-Ausdrucks ist, kann man die Abfrage innerhalb der join-Funktion leicht mit einer externen Abfrage verknüpfen. Hier eine Abfrage, die jede einzelne Tabelle ausgibt, sowie eine Liste der Spalten, die den Primärschlüssel bilden:

Die entsprechende Ausgabe ist in Tabelle A zu sehen.

Man kann diese „join“-Funktion auch zum Vergleichen zweier geordneter Datensätze verwenden. Die folgende Abfrage überprüft zum Beispiel, ob ein Index auf Basis eines Fremdschlüssels erstellt wurde (was ein Locking der Tabelle verhindert und Master-Detail-Abfragen unterstützt):

Diese Abfrage führt zwei Unterabfragen aus: Eine fragt die Fremdschlüssel ab, die andere Indices. Die Verknüpfung zwischen diesen beiden Abfragen besteht im Tabellennamen und in der Liste der zur Erstellung von Fremdschlüssel und Index verwendeten Spalten, die als geordnete Liste von Werten übernommen werden.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Bedrohungen in Europa: Schwachstellen in der Lieferkette dominieren

Hinter 84 Prozent der Zwischenfälle bei Herstellern stecken Schwachstellen in der Lieferkette. Auf dem Vormarsch…

6 Tagen ago

Bericht: Apple arbeitet an faltbarem iPad

Es kommt angeblich 2028 auf den Markt. Das aufgeklappte Gerät soll die Displayfläche von zwei…

6 Tagen ago

HPE baut Supercomputer am Leibniz-Rechenzentrum

Das System basiert auf Hardware von HPE-Cray und Nvidia. Die Inbetriebnahme erfolgt 2027.

7 Tagen ago

Bund meldet Fortschritte in der Netzversorgung

Die Bundesnetzagentur hat ihr Gigabit-Grundbuch aktualisiert. Drei von vier Haushalten sollen jetzt Zugang zu Breitbandanschlüssen…

7 Tagen ago

Vorinstallierte Schadsoftware auf IoT-Geräten

Mit dem Internet verbundene Digitale Bilderrahmen oder Mediaplayer können mit Schadsoftware infiziert werden und sind…

1 Woche ago

iOS und iPadOS 18.2 beseitigen 21 Sicherheitslücken

Schädliche Apps können unter Umständen einen Systemabsturz auslösen. Mindestens eine Anfälligkeit erlaubt eine Remotecodeausführung.

1 Woche ago