Table is
Per i file Excel, XML o Parquet, è possibile specificare la tabella da cui si desidera caricare ti dati nell'identificatore di formato della tabella.
Sintassi:
Table is table name
Argomenti:
Argomenti
table name |
Specifica il nome della tabella. Il valore dipende dal formato della tabella:
-
Excel: il nome del foglio.
-
XML: il percorso che specifica le parti del file XML da caricare.
-
Parquet: il percorso che specifica la tabella, con il formato <nodo>.<nodo>.<nodo>.
Utilizzare Table is quando si specifica una tabella con struttura annidata.
Ad esempio, se si dispone di dati nel formato Parquet con il seguente schema:
Schema:
Field(name: "Name", datatype: String),
Field(name: "Age", datatype: Float),
Field(name: "Phone", datatype: List(
Field(name: "Item", datatype: Struct[
Field(name: "Number", datatype: String)
È possibile caricare Phone e i relativi campi annidati come una tabella con l'argomento Table is [Schema:Phone.Item]. Questa operazione genera il campo chiave %Key_Phone con la tabella.
|
Esempio: Excel
LOAD
"Item Number",
"Product Group",
"Product Line",
"Product Sub Group",
"Product Type"
FROM [lib://AttachedFiles/Item master.xlsx]
(ooxml, embedded labels, table is [Item master]);
Esempio: XML
LOAD
city%Table,
%Key_row_7FAC1F878EC01ECB
FROM [lib://AttachedFiles/cities.xml]
(XmlSimple, table is [root/row/country/city]);
Esempio: Parquet
Il file company.parquet contiene il seguente schema:
company (String)
contact (String)
company:salesrep (List)
salesrep (Group)
salesrep (String)
company:headquarter (List)
headquarter (Group)
country (String)
city (String)
city:region (List)
region (Group)
region (String)
Le istruzioni riportate sotto consentono di caricare o contenuti del file nelle tabelle. La prima istruzione LOAD carica il gruppo root. La seconda istruzione LOAD carica i contenuti del gruppo salesrep come una tabella. La terza carica il gruppo headquarter come una tabella. Infine, la quarta carica il gruppo region come una tabella.
LOAD * FROM […] (parquet);
LOAD * FROM […] (parquet, table is [company:salesrep.salesrep]);
LOAD * FROM […] (parquet, table is [company:headquarter.headquarter]
LOAD * FROM […] (parquet, table is [company:headquarter.headquarter.city:region.region]
Limiti:
L'identificatore Table is è rilevante solo per i file Excel, XML o Parquet.