Direkt zum Inhalt
Urkunden
FunktionenAusdrückeSchlüsselwörterAussagenKlauseln

MySQL JSON_EXTRACT() Function

Die Funktion `JSON_EXTRACT()` in MySQL wird verwendet, um Daten aus JSON-Dokumenten zu extrahieren. Sie ermöglicht es dir, bestimmte Werte aus JSON-kodierten Daten in deiner Datenbank abzurufen.

Verwendung

JSON_EXTRACT() wird häufig verwendet, wenn du auf bestimmte Daten in einem JSON-Objekt oder -Array zugreifen oder sie manipulieren musst. Sie gibt einen Pfad zu den gewünschten Daten an, die ein einzelner Wert oder eine Reihe von Werten sein können.

JSON_EXTRACT(json_doc, path)

In dieser Syntax steht `json_doc` für die JSON-Daten und `path` gibt die Position des gewünschten Wertes innerhalb des JSON-Dokuments an. Pfade können sowohl die Punktschreibweise für verschachtelte Elemente als auch die Klammerschreibweise für Arrays verwenden. Das "$"-Symbol steht für die Wurzel des JSON-Dokuments.

Hinweis: Die Funktion `JSON_EXTRACT()` ist ab MySQL 5.7 verfügbar.

Beispiele

1. Grundlegende Extraktion

SELECT JSON_EXTRACT('{"name": "John", "age": 30}', '$.name');

Dieses Beispiel extrahiert den Wert "John" aus dem JSON-String und greift dabei auf den Schlüssel "Name" zu.

2. Verschachtelte JSON-Extraktion

SELECT JSON_EXTRACT('{"user": {"name": "Jane", "age": 25}}', '$.user.age');

Hier holt die Funktion den Alterswert "25" aus einem verschachtelten JSON-Objekt unter dem Schlüssel "user".

3. Extrahieren aus einem JSON-Array

SELECT JSON_EXTRACT('[10, 20, 30, {"key": "value"}]', '$[3].key');

Die Funktion extrahiert den Wert "value" aus einem JSON-Array-Element bei Index 3, das ein JSON-Objekt mit einem "key" ist.

Tipps und bewährte Praktiken

  • Verwende gültiges JSON. Stelle sicher, dass das JSON-Dokument richtig formatiert und gültig ist, um Fehler zu vermeiden.
  • Leverage-Indizes. Erwäge die Indizierung von JSON-Spalten, um die Abfrageleistung zu verbessern.
  • Kenntnis der Pfadsyntax. Sei mit der JSON-Pfadsyntax vertraut und verwende "$" als Wurzel und die Punktnotation für verschachtelte Elemente. Auf Arrays kann auch mit der Klammerschreibweise zugegriffen werden.
  • Behandle Nullen. Die Funktion gibt `NULL` zurück, wenn der angegebene Pfad im JSON-Dokument nicht vorhanden ist.
  • Optimiere die Lagerung. Verwende JSON-Spalten anstelle von großen Textfeldern, um die Effizienz zu steigern und Abfragen zu optimieren.
  • Kombiniere Funktionen. Erwäge, `JSON_EXTRACT()` mit anderen SQL-Funktionen zu kombinieren, um komplexe Datenstrukturen zu manipulieren und abzurufen.

SQL Upskilling für Einsteiger

Erwerbe die SQL-Kenntnisse, um mit deinen Daten zu interagieren und sie abzufragen.
Kostenloses Lernen beginnen