JSON in der Oracle Datenbank
Ab Oracle Database 19c stehen umfassende Funktionen zur Verarbeitung von JSON-Daten zur Verfügung. JSON-Dokumente können in Zeichenketten- oder LOB-Spalten gespeichert und über Validierungsmechanismen auf korrekte Struktur geprüft werden. Besonders wichtig sind die Möglichkeiten zur Selektion und Projektion von JSON-Inhalten mit SQL.
Für die Selektion können JSON-Attribute gezielt gefiltert werden. Die Funktion JSON_EXISTS prüft, ob bestimmte Elemente oder Werte innerhalb eines JSON-Dokuments vorhanden sind. Mit JSON_VALUE lassen sich einzelne skalare Werte extrahieren und in WHERE-Klauseln für Such- und Filteroperationen verwenden.
Für die Projektion bietet Oracle mehrere Optionen. JSON_VALUE liefert einzelne Attribute als Spaltenwerte, während JSON_QUERY komplexe Objekte oder Arrays zurückgibt. Besonders leistungsfähig ist JSON_TABLE, das JSON-Daten in relationale Zeilen und Spalten transformiert. Dadurch können JSON-Dokumente wie reguläre Tabellen abgefragt und mit anderen relationalen Daten verknüpft werden. Ergänzend ermöglichen spezielle JSON-Indizes eine effiziente Ausführung solcher Abfragen auch bei großen Datenmengen.
