Zum Hauptinhalt springen
Übersetzte Seite

Diese Seite wurde mit KI-Unterstützung aus dem Englischen übersetzt. Bei Abweichungen ist die englische Version maßgeblich.

JSON_INSERT

Fügt neue Werte an den angegebenen Pfaden in ein JSON-Dokument ein, ohne vorhandene Werte zu überschreiben.

Siehe auch:
[SELECT] [JSON_EXTRACT] [JSON_SET] [JSON_REPLACE]


Syntax​

SELECT JSON_INSERT(json_column, path, new_value) FROM <multipartIdentifier>;

Argumente​

json_column
Die zu ändernde JSON-Spalte oder der zu ändernde Ausdruck.

path
Der JSON-Pfadausdruck, an dem der neue Wert eingefügt werden soll. Wenn der Pfad bereits vorhanden ist, wird der ursprüngliche Wert an diesem Pfad nicht ersetzt.

new_value
Der Wert, der am angegebenen Pfad in das JSON-Dokument eingefügt werden soll.

Rückgabewert(e)​

Gibt das JSON-Dokument mit dem eingefügten neuen Wert zurück, wenn der angegebene Pfad noch nicht vorhanden ist; andernfalls wird das JSON-Dokument unverändert zurückgegeben.

Verhalten, wenn ein Schlüssel vorhanden ist
FunktionÜberschreiben, wenn bereits vorhanden?Anlegen, wenn nicht vorhanden?
json_insert()NeinJa
json_replace()JaNein
json_set()JaJa

Beispiele​

Ein neues Schlüssel-Wert-Paar in ein JSON-Objekt einfügen​

-- Example: Insert a new 'region' key with the value 'Europe' into a JSON object
SELECT JSON_INSERT(json_data, '$.region', 'Europe') as updated_object;

/* expected output...
|-------------------------------------------------------------|
| updated_json |
|-------------------------------------------------------------|
| {"name":"ResourceOne", "type":"Storage", "region":"Europe"} |
|-------------------------------------------------------------|
*/

Diese Abfrage fügt einen neuen Schlüssel namens 'region' mit dem Wert 'Europe' in das JSON-Dokument ein, wenn der Schlüssel 'region' noch nicht vorhanden ist. Wenn 'region' bereits ein Schlüssel im Dokument ist, wird das ursprüngliche Dokument unverändert zurückgegeben.