Modificare i nomi di campo nelle matrici utilizzando CAST - Amazon Athena

Modificare i nomi di campo nelle matrici utilizzando CAST

Per modificare il nome di campo in una matrice che contiene valori ROW, è possibile utilizzare CAST per l'istruzione ROW:

WITH dataset AS ( SELECT CAST( ROW('Bob', 38) AS ROW(name VARCHAR, age INTEGER) ) AS users ) SELECT * FROM dataset

Questa query restituisce:

+--------------------+ | users | +--------------------+ | {NAME=Bob, AGE=38} | +--------------------+
Nota

Nell'esempio sopra riportato, si dichiara name come VARCHAR, perché è il suo tipo in Presto. Se dichiari questo STRUCT all'interno di un'istruzione CREATE TABLE, utilizza il tipo String, perché Hive definisce questo tipo di dati come String.