# Load

L'istruzione LOAD carica i campi da un file, dai dati definiti nello script, da una tabella caricata in precedenza, da una pagina Web, dal risultato di un'istruzione SELECT seguente o dalla generazione automatica di dati. È anche possibile caricare dati da connessioni di analisi.

Sintassi:

LOAD [ distinct ] fieldlist

[( from file [ format-spec ] |

from\_field fieldassource [format-spec]|

inline data [ format-spec ] |

resident table-label |

autogenerate size ) |extension pluginname.functionname([script] tabledescription)]

[ where criterion | while criterion ]

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[ group by groupbyfieldlist ]

[order by orderbyfieldlist ]

Argomenti

| Argomento | Descrizione |
| --- | --- |
| distinct [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm) | È possibile utilizzare distinct come predicato se si desidera caricare solo record univoci. Se ci sono record duplicati, verrà caricata la prima istanza.<br><br>Se si utilizzano caricamenti precedenti, è necessario inserire distinct nella prima istruzione di caricamento, dal momento che distinct ha effetto solo sulla tabella di destinazione.<br><br>[Caricamento precedente](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/load-data-from-previously-loaded-table.htm#Precedin) |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)fieldlist | fieldlist ::= ( \* \| field{, \* \| field } )<br><br>Un elenco di campi da caricare. L'utilizzo del carattere \* come elenco dei campi indica tutti i campi della tabella.<br><br>field ::= ( fieldref \| expression ) [as aliasname ]<br><br>La definizione di campo deve sempre contenere un valore letterale, un riferimento a un campo esistente o un'espressione.<br><br>fieldref ::= ( fieldname \|@fieldnumber \|@startpos:endpos [ I \| U \| R \| B \| T] )<br><br>fieldname è un testo che è identico al nome di un campo nella tabella. Tenere presente che il nome di campo deve essere racchiuso da virgolette doppie o parentesi quadre se, ad esempio, contiene spazi. Talvolta i nomi dei campi non sono disponibili in modo esplicito. Verrà quindi utilizzata una notazione differente:<br><br>@fieldnumber rappresenta il numero di campo di un file tabellare delimitato. Deve essere un intero positivo preceduto da "@". La numerazione viene sempre eseguita partendo da 1 fino al numero di campi presenti.<br><br>@startpos:endpos rappresenta le posizioni di inizio e di fine di un campo in un file con record a lunghezza fissa. Le posizioni devono essere entrambe numeri interi positivi. I due valori numerici devono essere preceduti dal simbolo "@" e separati da due punti. La numerazione viene sempre eseguita partendo da 1 fino al numero di posizioni presenti. Nell'ultimo campo n viene utilizzato come posizione finale.<br><br><ul><li>Se <span>@<span>startpos</span>:<span>endpos</span></span> è seguito immediatamente dal carattere <span>I</span> o <span>U</span>, i byte letti verranno interpretati come un valore intero binario con segno (<span>I</span>) o senza segno (<span>U</span>), in base all'ordine dei byte Intel. Il numero di posizioni lette deve essere 1, 2 o 4. </li><li>Se <span>@<span>startpos</span>:<span>endpos</span></span> è immediatamente seguito dal carattere <span>R</span>, la lettura dei byte verrà interpretata come un numero binario reale (a virgola mobile a 32 bit o a 64 bit conforme allo standard IEEE). Il numero di posizioni lette deve essere 4 o 8. </li><li>Se <span>@<span>startpos</span>:<span>endpos</span></span> è immediatamente seguito dal carattere <span>B</span>, la lettura dei byte sarà interpretata come numeri <span>BCD (Binary Coded Decimal)</span>, in base allo standard COMP-3.   Può essere specificato un numero di byte qualsiasi. </li></ul><br><br>expression può essere una funzione numerica o una funzione stringa basata su uno o molti altri campi della stessa tabella. Per ulteriori informazioni, vedere la sintassi delle espressioni.<br><br>[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)as viene utilizzato per assegnare un nuovo nome al campo. |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)from | from viene utilizzato se i dati devono essere caricati da un file mediante una connessione dati di una cartella o di un file Web<br><br>file ::= [ path ] filename<br><br>Esempio: 'lib://Table Files/'<br><br>Se tale percorso viene omesso, Qlik Sense ricerca il file nella directory specificata dall'istruzione Directory. Se non è presente alcuna istruzione Directory, Qlik Sense eseguirà la ricerca nella directory di lavoro, C:\Users\{user}\Documents\Qlik\Sense\Apps.<br><br>[Directory](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Directory.htm)<br><br>Nota informaticaIn un'installazione server di Qlik Sense, la directory di lavoro è specificata in Qlik Sense Repository Service e, per impostazione predefinita, è C:\ProgramData\Qlik\Sense\Apps. Per ulteriori informazioni, vedere la Guida di Console di gestione Qlik.<br><br>filename può contenere caratteri speciali nello standard DOS ( \* e ? ). Tutti i file corrispondenti verranno caricati nella directory specificata.<br><br>format-spec ::= ( fspec-item { , fspec-item } )<br><br>La specifica del formato è costituita da un elenco di più voci di specifica del formato, racchiuse tra parentesi.<br><br>[Voci per la specifica del formato](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptSpecifiers/format-specification-items.htm)<br><br>Nota di suggerimentoÈ possibile utilizzare la specifica di formato [URL is](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptSpecifiers/url.htm) per sostituire l'URL di una connessione dati di un file Web, ad esempio se è necessario creare un URL dinamico in base ad altri dati caricati.<br><br>Modalità di script legacy<br><br>Nella modalità di creazione degli script legacy sono supportati anche i seguenti formati di percorso:<br><br><ul><li><p>  assoluto </p><p><span><span>Esempio: </span></span><span>c:\data\</span></p></li><li><p>relativo alla directory di lavoro dell'app <span>Qlik Sense</span>.</p><p><span><span>Esempio: </span></span><span>data\</span></p></li><li><p>indirizzo dell'URL (<span>HTTP</span> o <span>FTP</span>), che punta a una posizione in Internet o su una Intranet </p><p><span><span>Esempio: </span></span><span>http://www.qlik.com</span></p></li></ul> |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)from\_field | from\_field viene utilizzato nel caso in cui i dati devono essere caricati da un campo caricato in precedenza.<br><br>fieldassource::=(tablename, fieldname)<br><br>Il campo è il nome del valore di tablename e fieldname caricato in precedenza.<br><br>format-spec ::= ( fspec-item {, fspec-item } )<br><br>La specifica del formato è costituita da un elenco di più voci di specifica del formato, racchiuse tra parentesi. Per ulteriori informazioni, vedere [Voci per la specifica del formato](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptSpecifiers/format-specification-items.htm).<br><br>Nota informaticafrom\_field supporta solo le virgole come delimitatore di elenco quando si separano campi nelle tabelle. |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)inline | inline viene utilizzato quando i dati devono essere immessi direttamente nello script e non caricati da un file.<br><br>data ::= [ text ]<br><br>I dati immessi mediante una clausola inline devono essere racchiusi da caratteri specifici, come parentesi quadre, virgolette doppie o apici. Il testo tra parentesi o virgolette viene interpretato allo stesso modo del contenuto di un file. Pertanto, quando si desidera immettere una nuova riga in un file di testo, è necessario eseguire la stessa operazione anche nel testo di una clausola inline: premendo il tasto INVIO mentre si digita lo script.<br><br>In un semplice caricamento inline, il numero di colonne è definito nella prima riga.<br><br>format-spec ::= ( fspec-item {, fspec-item } )<br><br>È possibile personalizzare il caricamento inline con molti degli stessi elementi di specifica di formato che sono disponibili per altre tabelle caricate. Tali elementi sono elencati tra parentesi. Per ulteriori informazioni, vedere [Voci per la specifica del formato](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptSpecifiers/format-specification-items.htm).<br><br>Per ulteriori informazioni sull'utilizzo di caricamenti inline, vedere [Utilizzo dei caricamenti inline per caricare i dati](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm). |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)resident | resident viene usato se i dati devono essere caricati da una tabella caricata in precedenza.<br><br>table label è un'etichetta che precede le istruzioni LOAD o SELECT che hanno creato la tabella originale. L'etichetta dovrà essere indicata con i due punti finali.<br><br>[Caricamento di dati da una tabella caricata in precedenza](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/load-data-from-previously-loaded-table.htm)<br><br>[Etichette di tabella](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/table-labels.htm) |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)autogenerate | autogenerate viene utilizzato se i dati devono essere automaticamente generati da Qlik Sense.<br><br>size ::= number<br><br>Number è un numero intero e indica il numero di record che da generare.<br><br>L'elenco di campi non deve contenere espressioni che richiedono dati provenienti da una sorgente dati esterna o da una tabella caricata in precedenza, a meno che non si faccia riferimento a un singolo valore di campo in una tabella caricata in precedenza con la funzione Peek. |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)extension | È possibile caricare dati da connessioni di analisi. È necessario utilizzare la clausola extension per chiamare una funzione definita nel plug-in SSE (Server-Side Extension) o per valutare uno script.<br><br>È possibile inviare una singola tabella al plug-in SSE, che restituisce una singola tabella di dati. Se il plug-in non specifica i nomi dei campi restituiti, i campi saranno denominati Field1, Field2 e così via.<br><br>Extension pluginname.functionname( tabledescription );<br><br><ul><li><p>Caricamento di dati mediante una funzione in un plug-in SSE </p><p><span>tabledescription ::= (table { ,tablefield} )</span></p><p>Se i campi della tabella non vengono specificati, verranno utilizzati in ordine di caricamento.</p></li><li><p>Caricamento di dati mediante valutazione di uno script in un plug-in SSE</p><p><span>tabledescription ::= ( script, table { ,tablefield} )</span></p></li></ul><br><br>Gestione dei tipi di dati nella definizione dei campi della tabella<br><br>I tipi di dati sono riconosciuti automaticamente nelle connessioni di analisi. Se i dati non hanno valori numerici e hanno almeno una stringa di testo non NULL, il campo è considerato di tipo testo. In tutti gli altri casi è considerato di tipo numerico.<br><br>È possibile forzare il tipo di dati racchiudendo il nome del campo in String() o Mixed().<br><br><ul><li><span>String()</span> forza il tipo del campo su testo. Se il campo è numerico, viene estratta la parte di testo del valore duale, senza eseguire alcuna conversione.</li><li><span>Mixed()</span> forza il tipo del campo su duale.</li></ul><br><br>String() o Mixed() non possono essere utilizzati esternamente alle definizioni dei campi della tabella extension e non è possibile utilizzare altre funzioni di Qlik Sense nella definizione di un campo della tabella.<br><br>Ulteriori informazioni sulle connessioni di analisi<br><br>Prima di poter utilizzare le connessioni di analisi, è necessario configurarle.<br><br>Qlik Sense Enterprise: [creazione di una connessione di analisi](https://help.qlik.com/en-US/sense-admin/November2024/Subsystems/DeployAdministerQSE/Content/Sense_DeployAdminister/QSEoW/Administer_QSEoW/Managing_QSEoW/create-analytic-connection.htm) (solo in lingua inglese)<br><br>Qlik Sense Desktop: [Configurazione di connessioni di analisi in Qlik Sense Desktop](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Introduction/configure-analytic-connection-desktop.htm)<br><br>Ulteriori informazioni sulle connessioni di analisi sono disponibili nel repository di GitHub. [qlik-oss/server-side-extension](https://github.com/qlik-oss/server-side-extension) |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)where | where è una clausola utilizzata per dichiarare se un record deve essere incluso o meno nella selezione. La selezione viene inclusa se criterion è True.<br><br>criterion è un'espressione logica. |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)while | while è una clausola che specifica se un record deve essere letto ripetutamente. Viene letto lo stesso record finché criterion è True. Per risultare utile, una clausola while deve generalmente includere la funzione IterNo( ).<br><br>criterion è un'espressione logica. |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)group by | group by è una clausola usata per definire su quali campi devono essere aggregati (raggruppati) i dati. I campi di aggregazione devono essere inclusi in qualche modo nelle espressioni caricate. Nessun altro campo tranne i campi di aggregazione può essere usato al di fuori delle funzioni di aggregazione nelle espressioni caricate.<br><br>groupbyfieldlist ::= (fieldname { ,fieldname } ) |
| [](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)order by | order by è una clausola utilizzata per ordinare i record di una tabella residente prima che vengano elaborati da un’istruzione load. La tabella residente può essere ordinata su uno o più campi, in modo crescente o decrescente. L’ordinamento viene eseguito innanzitutto in base ai valori numerici e secondariamente in base all'ordine di confronto nazionale. Questa clausola può essere utilizzata solamente quando la sorgente dati è una tabella residente.<br><br>I campi di ordinamento specificano il campo in base al quale viene ordinata la tabella residente. Il campo può essere specificato da un nome o dal suo numero nella tabella residente (il primo campo è il numero 1).<br><br>orderbyfieldlist ::= fieldname [ sortorder ] { , fieldname [ sortorder ] }<br><br>sortorder è asc per crescente o desc per decrescente. Se sortorder non è specificato, viene utilizzato asc.<br><br>fieldname, path, filename e aliasname sono stringhe di testo che rappresentano ciò che implica il loro rispettivo nome. Qualsiasi campo presente nella tabella sorgente può essere utilizzato come fieldname. Tuttavia, i campi creati mediante la clausola as (aliasname) non appartengono all'ambito e non possono essere utilizzati all'interno della stessa istruzione load. |

Se non viene specificata alcuna sorgente dati mediante una clausola from, inline, resident, from\_field, extension o autogenerate, i dati verranno caricati dal risultato dell'istruzione SELECT o LOAD immediatamente successiva. L’istruzione successiva non dovrà avere un prefisso.

[Caricamento di dati da una tabella caricata in precedenza](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/load-data-from-previously-loaded-table.htm)

Esempi:

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento di formati di file differenti

Caricare un file di dati delimitato con le opzioni predefinite:

`LOAD * from data1.csv;
`` `

Caricare un file di dati delimitato da una connessione della libreria (DataFiles):

`LOAD * from 'lib://DataFiles/data1.csv';
`` `

Caricare tutti i file di dati delimitati da una connessione della libreria (DataFiles):

`LOAD * from 'lib://DataFiles/*.csv';
`` `

Caricare un file delimitato specificando la virgola come delimitatore e con etichette incorporate:

`LOAD * from 'c:\userfiles\data1.csv' (ansi, 
 txt, delimiter is ',', embedded labels);
`` `

Caricare un file delimitato specificando la tabulazione come delimitatore e con etichette incorporate:

`LOAD * from 'c:\userfiles\data2.txt' (ansi, 
 txt, delimiter is '\t', embedded labels);`` `

Caricare un file dif con intestazioni incorporate:

`LOAD * from file2.dif (ansi, dif, embedded 
 labels);`` `

Caricare tre campi da un file Record Fixed senza intestazioni:

`LOAD @1:2 as ID, @3:25 as Name, @57:80 as City 
 from data4.fix (ansi, fix, no labels, header is 0, record is 80);
`` `

Caricare un file QVX specificando un percorso assoluto:

`LOAD * from C:\qdssamples\xyz.qvx (qvx);`

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento di file Web

Caricare dall'URL predefinito impostato nella connessione dati del file Web:

`LOAD * from [lib://MyWebFile];
				` ` `

Caricare da un URL specifico e sostituire l'URL impostato nella connessione dati del file Web:

`LOAD * from [lib://MyWebFile] (URL is 'http://localhost:8000/foo.bar');
				` ` `

Caricare da un URL specifico impostato in una variabile mediante espansione con simbolo del dollaro:

`SET dynamicURL = 'http://localhost/foo.bar';` `LOAD * from [lib://MyWebFile] (URL is '$(dynamicURL)');`

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Selezione di alcuni campi, ridenominazione e calcolo dei campi

Caricare solo tre campi specifici da un file delimitato:

`LOAD FirstName, LastName, Number from data1.csv;
				`` `

Assegnare il nome A al primo campo e il nome B al secondo campo durante il caricamento di un file senza etichette:

`LOAD @1 as A, @2 as B from data3.txt (ansi, 
					txt, delimiter is '\t', no labels);
				`` `

Caricare Name come concatenazione di FirstName, uno spazio e LastName:

`LOAD FirstName&' '&LastName as Name 
					from data1.csv;
				`` `

Caricare Quantity, Price e Value (il prodotto di Quantity e Price):

`LOAD Quantity, Price, Quantity*Price as Value 
				from data1.csv;`

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Selezione di alcuni record

Caricare solo i record univoci mentre i record duplicati verranno eliminati:

`LOAD distinct FirstName, LastName, Number from 
					data1.csv;
				`` `

Caricare solo i record in cui il campo Litres presenta un valore superiore a zero:

`LOAD * from Consumption.csv where Litres>0;
				`

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento di dati non presenti nel file e di dati generati automaticamente

Caricare una tabella con dati inline, due campi denominati CatID e Category:

`LOAD * Inline
				` `[CatID, Category
				` `0,Regular
				` `1,Occasional
				` `2,Permanent];
				` ` `

Caricare una tabella con dati inline, tre campi denominati UserID, Password e Access:

`LOAD * Inline [UserID, Password, Access
				` `A, ABC456, User
				` `B, VIP789, Admin];
				` ` `

Caricare una tabella con 10.000 righe. Il campo A conterrà il numero del record di lettura (1,2,3,4,5...), mentre il campo B conterrà un numero casuale compreso tra 0 e 1:

`LOAD RecNo( ) as A, rand( ) as B autogenerate(10000);`

Nota informaticaLa parentesi dopo autogenerate è consentita, ma non obbligatoria.

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento di dati da una tabella caricata in precedenza

Come prima cosa carichiamo un file tabella delimitato assegnandogli il nome tab1:

`tab1:
				` `SELECT A,B,C,D from 'lib://DataFiles/data1.csv';
				`` `

Caricare i campi dalla tabella tab1 già caricata come tab2:

`tab2:` `LOAD A,B,month(C),A*B+D as E resident tab1;` ` `

Caricare i campi dalla tabella già caricata tab1, ma solo record in cui A è maggiore di B:

`tab3:` `LOAD A,A+B+C resident tab1 where A>B;` ` `

Caricare i campi dalla tabella già caricata tab1 ordinata in base a A:

`LOAD A,B*C as E resident tab1 order by A;` ` `

Caricare campi dalla tabella tab1 già caricata, ordinata in base al primo campo, quindi in base al secondo campo:

`LOAD A,B*C as E resident tab1 order by 1,2;` ` `

Caricare i campi dalla tabella tab1 già caricata, ordinata in ordine decrescente in base a C, quindi in ordine crescente in base a B e quindi in base al primo campo in ordine decrescente:

`LOAD A,B*C as E resident 
				tab1 order by C desc, B asc, 1 desc;`

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento dei dati da campi caricati in precedenza

Caricare il campo Types da tabelle caricate in precedenza Characters come A:

`LOAD A from_field (Characters, 
				Types);`

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento dei dati da una tabella successiva (anteriore al caricamento)

Caricare A, B e i campi calcolati X e Y dalla tabella Table1, caricata nell'istruzione SELECT successiva:

`LOAD A, B, if(C>0,'positive','negative') 
					as X, weekday(D) as Y;
				` `SELECT A,B,C,D from Table1;` ` `

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Raggruppamento di dati

Caricare i campi raggruppati (aggregati) in base a ArtNo:

`LOAD ArtNo, round(Sum(TransAmount),0.05) as 
					ArtNoTotal from table.csv group by ArtNo;
				` ` `

Caricare i campi raggruppati (aggregati) in base a Week e ArtNo:

`LOAD Week, ArtNo, round(Avg(TransAmount),0.05) 
				as WeekArtNoAverages from table.csv group by Week, ArtNo;` ` `

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Lettura ripetuta di un record

In questo esempio è presente un file di input Grades.csv contenente i voti per ciascuno studente raccolti in un singolo campo:

`Student,Grades` `Mike,5234` `John,3345` `Pete,1234` `Paul,3352`

I voti, in una scala da 1 a 5 , rappresentano le materie Math, English, Science e History. È possibile suddividere i voti in valori separati leggendo i record più volte con una clausola while, utilizzando la funzione IterNo( ) come contatore. Durante ciascuna lettura, il voto viene estratto con la funzione Mid e memorizzato in Grade, mentre la materia viene selezionata utilizzando la funzione pick e memorizzata in Subject. La clausola finale while contiene il test per verificare che siano stati letti tutti i voti (in questo caso quattro per studente), il che significa che deve essere letto il record dello studente successivo.

`MyTab:
				` `LOAD 
					Student,
				` `mid(Grades,IterNo( 
					),1) as Grade,
				` `pick(IterNo( 
				), 'Math', 'English', 'Science', 'History') as Subject from Grades.csv` `while IsNum(mid(Grades,IterNo(),1));`` `

Il risultato è una tabella contenente i seguenti dati:

![Resulting table data](https://help.qlik.com/it-IT/sense/November2024/Subsystems/Hub/Content/Resources/Images/ex_gen_LoadRepeated.png)

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Load.htm)

#### Caricamento da connessioni di analisi

Sono utilizzati i dati campione seguenti.

```
Values:
Load
 Rand() as A,
 Rand() as B,
 Rand() as C
AutoGenerate(50);
```

Caricamento di dati mediante una funzione

In questi esempi si suppone di avere un plug-in di connessione di analisi denominato P contenente una funzione personalizzata Calculate(Parameter1, Parameter2). La funzione restituisce la tabella Results contenente i campi Field1 e Field2.

```
Load * Extension P.Calculate( Values{A, C} );
```

Carica tutti i campi restituiti quando si inviano i campi A e C alla funzione.

```
Load Field1 Extension P.Calculate( Values{A, C} );
```

Carica solo il campo Field1 quando si inviano i campi A e C alla funzione.

```
Load * Extension P.Calculate( Values );
```

Carica tutti i campi restituiti quando si inviano i campi A e B alla funzione. Dal momento che i campi non sono specificati, vengono utilizzati A e B, ossia i primi nell'ordine nella tabella.

```
Load * Extension P.Calculate( Values {C, C});
```

Carica tutti i campi restituiti quando si invia il campo C a entrambi i parametri della funzione.

Load \* Extension P.Calculate( Values {String(A), Mixed(B)});

Carica tutti i campi restituiti quando si invia il campo A forzato come stringa e il campo B forzato come numerico alla funzione.

Caricamento di dati mediante valutazione di uno script

Load A as A\_echo, B as B\_echo Extension R.ScriptEval( 'q;', Values{A, B} );

Carica la tabella restituita dallo script q quando si inviano i valori di A e B.

Load \* Extension R.ScriptEval( '$(My\_R\_Script)', Values{A, B} );

Carica la tabella restituita dallo script memorizzata nella variabile My\_R\_Script quando si inviano i valori di A e B.

Load \* Extension R.ScriptEval( '$(My\_R\_Script)', Values{B as D, \*} );

Carica la tabella restituita dallo script memorizzato nella variabile My\_R\_Script quando si inviano i valori di B rinominato in D, A e C. L'uso dell'asterisco (\*) consente di inviare i rimanenti campi senza riferimento.

Nota informaticaAll'estensione file delle connessioni DataFiles si applica la distinzione tra maiuscole e minuscole. Ad esempio: .qvd.