In MySQL können Sie JSON_OBJECT()
verwenden -Funktion zum Erstellen eines JSON-Objekts aus einer Liste von Schlüssel/Wert-Paaren. Sie geben jedes Schlüssel/Wert-Paar als zwei separate Argumente an. Jedes Paar wird im resultierenden JSON-Objekt zu einem Schlüssel/Wert-Paar.
Sie müssen eine gerade Anzahl von Argumenten angeben (andernfalls hätten Sie irgendwo in Ihrer Argumentliste ein unvollständiges Paar).
Die Funktion akzeptiert auch eine leere Liste (d. h. Sie geben keine Argumente an). In diesem Fall erhalten Sie ein leeres Objekt.
Syntax
Die Syntax lautet wie folgt:
JSON_OBJECT([Schlüssel, Wert[, Schlüssel, Wert] ...])
Die eckigen Klammern zeigen ein optionales Argument an. Daher ist es durchaus zulässig, diese Funktion ohne Übergabe von Argumenten zu verwenden.
Beispiel 1 – Grundlegende Verwendung
Hier ist ein Beispiel zur Veranschaulichung.
SELECT JSON_OBJECT('City', 'Cairns', 'Population', 139693) AS 'Ergebnis';
Ergebnis:
+--------------------------------------------------+| Ergebnis |+--------------------------------------------------+| {"Stadt":"Cairns", "Bevölkerung":139693} |+---------------------------------------------- ---------+
Beispiel 2 – Leere Zeichenfolgen
Leere Zeichenfolgen sind gültig.
SELECT JSON_OBJECT('City', '', 'Population', 139693) AS 'Ergebnis';
Ergebnis:
+------------------------------------+| Ergebnis |+------------------------------------+| {"Stadt":"", "Einwohnerzahl":139693} |+----------------------------------------------- --+
Dies gilt auch für den Schlüssel:
SELECT JSON_OBJECT('', 'Cairns', 'Population', 139693) AS 'Ergebnis';
Ergebnis:
Beispiel 3 – Leere Listen
Leere Listen sind ebenfalls gültig. Dies führt zu einem leeren JSON-Objekt.
SELECT JSON_OBJECT() AS 'Ergebnis';
Ergebnis:
+--------+| Ergebnis |+--------+| {} |+--------+
Beispiel 4 – NULL-Werte
Der Wert Teil des Schlüssel/Wert-Paares kann NULL-Werte enthalten.
SELECT JSON_OBJECT('City', 'Cairns', 'Population', NULL) AS 'Ergebnis';
Ergebnis:
+----------------------------------------+| Ergebnis |+----------------------------------------+| {"Stadt":"Cairns", "Bevölkerung":null} |+---------------------------------------------- -------+
Aber der Schlüssel part darf keine NULL-Werte enthalten. Wenn ein Schlüssel einen NULL-Wert hat, tritt ein Fehler auf.
SELECT JSON_OBJECT('City', 'Cairns', NULL, 139693) AS 'Ergebnis';
Ergebnis:
FEHLER 3158 (22032):JSON-Dokumente dürfen keine NULL-Mitgliedsnamen enthalten.