UPPERFunzione _ ATTRIBUTE _ NAMES - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

UPPERFunzione _ ATTRIBUTE _ NAMES

Converte tutti i nomi degli attributi applicabili in un SUPER valore in lettere maiuscole, utilizzando la stessa routine di conversione dei maiuscoli di. UPPERfunzione UPPER_ ATTRIBUTE _ NAMES supporta UTF -8 caratteri multibyte, fino a un massimo di quattro byte per carattere.

Per convertire i nomi SUPER degli attributi in lettere minuscole, utilizzare il. LOWERFunzione _ ATTRIBUTE _ NAMES

Sintassi

UPPER_ATTRIBUTE_NAMES(super_expression)

Argomenti

super_expression

Un'espressione SUPER.

Tipo restituito

SUPER

Esempi

Conversione dei nomi degli SUPER attributi in lettere maiuscole

L'esempio seguente utilizza UPPER _ ATTRIBUTE _ NAMES per convertire i nomi degli attributi di tutti i SUPER valori in una tabella.

-- 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"]}]

Osservate come NAMES funziona UPPER ATTRIBUTE _ _.

  • NULLi valori e i valori scalariSUPER, ad esempio, "a" sono invariati.

  • In un SUPER oggetto, tutti i nomi degli attributi vengono modificati in lettere maiuscole, ma i valori degli attributi, ad esempio, rimangono invariati. "b"

  • UPPER_ ATTRIBUTE _ NAMES si applica in modo ricorsivo a qualsiasi SUPER oggetto annidato all'interno di un array o all'interno di un SUPER altro oggetto.

Utilizzo di UPPER _ ATTRIBUTE _ NAMES su un SUPER oggetto con nomi di attributi duplicati

Se un SUPER oggetto contiene attributi i cui nomi differiscono solo nelle maiuscole e minuscole, UPPER ATTRIBUTE _ _ NAMES genererà un errore. Analizza l'esempio seguente.

SELECT UPPER_ATTRIBUTE_NAMES(JSON_PARSE('{"A": "A", "a": "a"}')); error: Invalid input code: 8001 context: SUPER value has duplicate attributes after case conversion.