Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Funktion UPPER_ATTRIBUTE_NAMES
Konvertiert alle zutreffenden Attributnamen in einem SUPER-Wert in Großbuchstaben und verwendet dabei dieselbe Umwandlungsroutine wie bei. Die Funktion UPPER UPPER_ATTRIBUTE_NAMES unterstützt UTF-8-Multibyte-Zeichen, bis zu einem Maximum von vier Byte pro Zeichen.
Um SUPER-Attributnamen in Kleinbuchstaben umzuwandeln, verwenden Sie den. Funktion LOWER_ATTRIBUTE_NAMES
Syntax
UPPER_ATTRIBUTE_NAMES(super_expression)
Argumente
- super_expression
-
Ein SUPER-Ausdruck.
Rückgabetyp
SUPER
Beispiele
SUPER-Attributnamen in Großbuchstaben konvertieren
Im folgenden Beispiel werden UPPER_ATTRIBUTE_NAMES verwendet, um die Attributnamen aller SUPER-Werte in einer Tabelle zu konvertieren.
-- Create a table and insert several SUPER values. CREATE TABLE t (i INT, s SUPER); INSERT INTO t VALUES (1, NULL), (2, 'a'::SUPER), (3, JSON_PARSE('{"AttributeName": "b"}')), (4, JSON_PARSE( '[{"Subobject": {"c": "c"}, "Subarray": [{"d": "d"}, "e"] }]')); -- Convert all attribute names to uppercase. UPDATE t SET s = UPPER_ATTRIBUTE_NAMES(s); SELECT i, s FROM t ORDER BY i;
i | s ---+-------------------------------------------------- 1 | NULL 2 | "a" 3 | {"ATTRIBUTENAME":"B"} 4 | [{"SUBOBJECT":{"C":"c"},"SUBARRAY":[{"D":"d"}, "e"]}]
Beobachten Sie, wie UPPER_ATTRIBUTE_NAMES funktioniert.
NULL-Werte und skalare SUPER-Werte wie sind unverändert.
"a"
In einem SUPER-Objekt werden alle Attributnamen in Großbuchstaben geändert, Attributwerte wie z. B.
"b"
bleiben jedoch unverändert.UPPER_ATTRIBUTE_NAMES gilt rekursiv für jedes SUPER-Objekt, das in einem SUPER-Array oder in einem anderen Objekt verschachtelt ist.
Verwendung von UPPER_ATTRIBUTE_NAMES für ein SUPER-Objekt mit doppelten Attributnamen
Wenn ein SUPER-Objekt Attribute enthält, deren Namen sich nur in ihrer Groß- und Kleinschreibung unterscheiden, gibt UPPER_ATTRIBUTE_NAMES einen Fehler aus. Betrachten Sie das folgende Beispiel.
SELECT UPPER_ATTRIBUTE_NAMES(JSON_PARSE('{"A": "A", "a": "a"}'));
error: Invalid input code: 8001 context: SUPER value has duplicate attributes after case conversion.