JSON_VALUE Skalarfunktion
Die Funktion JSON_VALUE gibt einen skalaren SQL-Wert aus JSON-Text unter Verwendung eines SQL/JSON-Pfadausdrucks zurück.
Obwohl das Schema für diese Funktion SYSIBM ist, kann die Funktion nicht als qualifizierter Name angegeben werden.
- JSON-Ausdruck
- Ein Ausdruck, der einen Wert zurückgibt, der ein integrierter Zeichenfolgedatentyp ist, außer den folgenden Datentypen (SQLSTATE 42815):
- GRAPHIC
- VARGRAPHIC
- DBCLOB
- BINARY
- CHAR FOR BIT DATA
- VARCHAR FOR BIT DATA
- Ein benutzerdefinierter Typ, der aus einem der zuvor aufgelisteten Datentypen stammt.
Wenn ein Zeichenwert zurückgegeben wird, muss er korrekt formatierte JSON-Daten enthalten (SQLSTATE 22032). Wenn ein Binärdatentyp zurückgegeben wird, wird er gemäß der expliziten oder impliziten Klausel FORMAT interpretiert.
- JSON FORMATIEREN
- JSON-Ausdruck ist als JSON-Daten formatiert.
Wenn json-ausdruck ein Zeichenfolgedatentyp ist, wird er als JSON-Daten behandelt.
Wenn json-ausdruck ein binärer Zeichenfolgedatentyp ist, wird er als UTF-8 -Daten interpretiert.
- BSON FORMAT
- Gibt an, dass json-ausdruck als BSON-Darstellung von JSON-Daten formatiert wird (SQLSTATE 22032). JSON-Ausdruck muss ein Binärzeichenfolgedatentyp sein (SQLSTATE 42815).
sql-json-pfadausdruck - Ein Ausdruck, der einen Wert zurückgibt, der ein integrierter Zeichenfolgedatentyp ist. Die Zeichenfolge wird als SQL/JSON-Pfadausdruck interpretiert und verwendet, um einen JSON-Wert in den JSON-Daten zu lokalisieren, die durch JSON-Ausdruckangegeben werden. Weitere Informationen zum SQL/JSON-Pfadausdruck finden Sie unter sql-json-pfadausdruck.
- AS pfadname
- Gibt einen Namen an, der zum Identifizieren von sql-json-pfadausdruckverwendet wird.
- RETURNING datentyp
- Gibt den Datentyp des Ergebnisses an Der Standardwert ist CLOB (2 GB). Die Standardcodierung, die verwendet wird, wenn der Datentyp eine Binärzeichenfolge ist, ist UTF-8.
Eine Beschreibung der integrierten Datentypen finden Sie unter Anweisung CREATE TABLE .
- BEI LEERER
- Gibt das Verhalten an, wenn eine leere Sequenz von sql-json-pfadausdruckzurückgegeben wird.
- NULL AUF LEER
- Ein Nullwert wird zurückgemeldet. Diese Klausel ist der Standardwert.
- FEHLER BEI LEERER
- Es wird ein Fehler zurückgegeben.
- DEFAULT standardausdruck ON EMPTY
- Der durch standardausdruck angegebene Wert wird zurückgegeben. Der Datentyp von standardausdruck muss mit dem zurückgegebenen Datentyp identisch sein (SQLSTATE-Wert 42815).
- Bei Fehler
- Gibt das Verhalten an, wenn ein Fehler von JSON_VALUE festgestellt wird
- NULL BEI FEHLER
- Ein Nullwert wird zurückgemeldet. Diese Klausel ist der Standardwert.
- FEHLER BEI FEHLER
- Es wird ein Fehler zurückgegeben.
- DEFAULT standardausdruck ON ERROR
- Der durch standardausdruck angegebene Wert wird zurückgegeben. Der Datentyp von standardausdruck muss mit dem zurückgegebenen Datentyp identisch sein (SQLSTATE-Wert 42815).
Das Ergebnis kann null sein. Wenn json-ausdruck null ist, ist das Ergebnis der Nullwert.
Hinweise
- Wenn Parametermarken nicht explizit in einen unterstützten Datentyp umgesetzt werden, wird ein Fehler zurückgegeben (SQLSTATE 42815)
Beispiele
- Gibt einen Wert aus JSON-Text als ganze Zahl zurück.
VALUES (JSON_VALUE('{"id":"987"}', 'strict $.id' RETURNING INTEGER));Das Ergebnis ist 987.
- Ruft den Wert für das Bonusfeld aus JSON-Text ab. Gibt sie als ganze Zahl zurück.
Das Ergebnis ist 800.VALUES (JSON_VALUE('{"pay":{"salary":94250.00,"bonus":800.00,"comm":3300.00}}', 'strict $.pay.bonus' RETURNING INTEGER));
