Load
L'instruction LOAD charge des champs à partir d'un fichier, de données définies dans le script, d'une table déjà chargée, d'une page Web, du résultat d'une instruction SELECT ultérieure ou via la génération automatique de données. Il est également possible de charger des données à partir de connexions analytiques.
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 ]
[order by orderbyfieldlist ]
Argument | Description |
---|---|
distinct | Vous pouvez utiliser distinct en tant que prédicat si vous ne souhaitez charger que des enregistrements uniques. En cas d'enregistrements en double, seule la première instance sera chargée. Si vous utilisez des instructions de chargement antérieures, vous devez placer distinct dans la première instruction LOAD, car distinct n'affecte que la table de destination. |
fieldlist | fieldlist ::= ( * | field{, * | field } ) Liste des champs à charger. L'utilisation du symbole * comme liste de champs signifie inclure tous les champs de la table. field ::= ( fieldref | expression ) [as aliasname ]La définition du champ doit toujours contenir un littéral, une référence à un champ existant ou une expression. fieldref ::= ( fieldname |@fieldnumber |@startpos:endpos [ I | U | R | B | T] )fieldname est un texte identique à un nom de champ dans la table. Notez que le nom du champ doit être mis entre guillemets doubles droits ou entre crochets s'il contient des espaces, par exemple. Les noms des champs ne sont pas toujours disponibles de manière explicite. Une notation différente est alors utilisée : @fieldnumber représente le numéro du champ dans un fichier de table délimité. Il doit s'agir d'un entier positif précédé d'un arobase (@). La numérotation est toujours effectuée de 1 jusqu'au nombre total de champs. @startpos:endpos représente les positions de début et de fin d'un champ dans un fichier contenant des enregistrements de longueur fixe. Ces positions doivent être toutes deux des entiers positifs. Les deux nombres doivent être précédés d'un arobase (@) et séparés par deux-points. La numérotation est toujours effectuée de 1 jusqu'au nombre total de positions. Dans le dernier champ, n est utilisé comme position de fin.
expression peut correspondre à une fonction numérique ou une fonction de chaîne basée sur un ou plusieurs autres champs de la même table. Pour plus d'informations, voir la syntaxe des expressions. |
from | from est utilisé si les données doivent être chargées à partir d'un fichier au moyen d'un dossier. Lors d'un chargement à partir d'un fichier dans l'espace dans Qlik Cloud Analytics, un chemin d'accès valide doit être utilisé. Voir Règles relatives aux chemins d'accès aux dossiers d'espaces valides. file ::= [ path ] filename Dans Qlik Cloud Analytics, les structures de dossiers hiérarchiques sont supportées et peuvent être référencées dans l'instruction.
Pour plus d'informations et des exemples, consultez Chargement de fichiers à partir d'espaces dans Qlik Cloud Analytics. |
from_field | from_field est utilisé si les données doivent être chargées à partir d'un champ précédemment chargé. fieldassource::=(tablename, fieldname) Le champ correspond au nom des arguments tablename et fieldname précédemment chargés. format-spec ::= ( fspec-item {, fspec-item } )La spécification du format se compose d'une liste de plusieurs éléments de spécification du format, mis entre parenthèses. Pour plus d'informations, voir Éléments de spécification du format. Note Informationsfrom_field prend uniquement en charge les virgules comme délimiteur de liste pour séparer les champs dans les tables. |
inline | inline est utilisé si les données doivent être saisies dans le script au lieu d'être chargées à partir d'un fichier. data ::= [ text ] Les données saisies à l'aide d'une clause inline doivent être encadrées par des caractères spécifiques : des crochets, des guillemets ou des backticks (`). Le texte placé entre ces guillemets ou crochets est interprété de la même manière que le contenu d'un fichier. C'est pourquoi vous devez également insérer une nouvelle ligne dans la clause inline, là où vous en auriez inséré une dans un fichier texte : en appuyant sur la touche Entrée lors de la saisie du script. Dans un chargement inline simple, le nombre de colonnes est défini par la première ligne. format-spec ::= ( fspec-item {, fspec-item } )Vous pouvez personnaliser le chargement inline via un grand nombre des mêmes éléments de spécification de format que ceux disponibles pour d'autres tables chargées. Ces éléments sont indiqués entre parenthèses. Pour plus d'informations, voir Éléments de spécification du format. Pour plus d'informations sur les chargements inline, voir Utilisation de chargements inline pour charger des données. |
resident | resident est utilisé si les données doivent être chargées à partir d'une table précédemment chargée. table label est une étiquette précédant l'instruction LOAD ou SELECT ayant créé la table de départ. L'étiquette doit être saisie avec deux-points à la fin. |
autogenerate | autogenerate est utilisé si les données doivent être générées automatiquement par Qlik Sense. size ::= number Number est un entier indiquant le nombre d'enregistrements à générer. La liste de champs ne doit pas contenir d'expressions nécessitant des données provenant d'une source de données externe ou d'une table chargée précédemment, à moins que vous ne fassiez référence à une valeur de champ unique dans une table chargée au préalable à l'aide de la fonction Peek. |
where | where est une clause utilisée pour indiquer si un enregistrement doit être inclus ou pas dans la sélection. La sélection est incluse si l'expression criterion est définie sur True. criterion est une expression logique. |
while | while est une clause utilisée pour indiquer si un enregistrement doit être lu plusieurs fois. Le même enregistrement est lu tant que l'expression criterion est définie sur True. Pour être utile, une clause while doit généralement inclure la fonction IterNo( ). criterion est une expression logique. |
group by | group by est une clause utilisée pour déterminer les champs sur lesquels les données doivent être agrégées (groupées). Les champs d'agrégation doivent être inclus d'une manière ou d'une autre dans les expressions chargées. Aucun autre champ que les champs d'agrégation ne peut être utilisé en dehors des fonctions d'agrégation dans les expressions chargées. groupbyfieldlist ::= (fieldname { ,fieldname } ) |
order by | order by est une clause utilisée pour trier les enregistrements d'une table résidente avant qu'ils ne soient traités par l'instruction load. La table résidente peut être triée par un ou plusieurs champs, par ordre croissant ou décroissant. Le tri est principalement effectué par valeur numérique, puis par valeur de paramètres régionaux de classement national. Cette clause peut uniquement être utilisée lorsque la source de données est une table résidente. Les champs de tri indiquent les champs selon lesquels la table résidente est triée. Le champ peut être spécifié par son nom ou par son numéro dans la table résidente (le premier champ est le numéro 1). orderbyfieldlist ::= fieldname [ sortorder ] { , fieldname [ sortorder ] } sortorder correspond soit à asc pour un ordre croissant, soit à desc pour un ordre décroissant. Si aucun argument sortorder n'est spécifié, c'est asc qui est utilisé. fieldname, path, filename et aliasname sont des chaînes textuelles représentant ce que ces noms désignent. N'importe quel champ de la table source peut être utilisé comme fieldname. Toutefois, les champs créés via la clause as (aliasname) ne sont pas concernés et ne peuvent pas être utilisés dans la même instruction load. |
Si aucune source de données n'est fournie par les clauses from, inline, resident, from_field, extension ou autogenerate, les données sont chargées à partir du résultat de l'instruction SELECT ou LOAD qui suit immédiatement. L'instruction qui suit ne doit pas comporter de préfixe.
Chargement de données à partir d'une table déjà chargée
Chargement de fichiers à partir d'espaces dans Qlik Cloud Analytics
Dans Qlik Cloud Analytics, lors du chargement de données provenant d'un fichier de données dans un script de chargement, vous pouvez utiliser une instruction LOAD ou insérer le code QVS. Dans les deux cas, les structures des dossiers des espaces hiérarchiques peuvent être référencées dans l’instruction de votre script. Suivez les règles relatives aux chemins d'accès aux dossiers d'espaces valides. De plus, le fichier et l'ensemble des dossiers référencés doivent déjà exister à l'emplacement spécifié. Sinon, le chargement échoue.
Référence à un fichier au chemin d'accès de premier niveau d'un espace
Cet exemple charge le fichier orders.csv à partir d'un espace personnel. Le fichier ne se trouve dans aucun dossier spécifique, mais au chemin d'accès de premier niveau de l'espace.
LOAD * FROM [lib://DataFiles/orders.csv];
Cet exemple charge le fichier orders.csv à partir d'un espace partagé, d'un espace géré ou d'un espace de données. Le nom de l'espace est TeamSharedSpace. Le fichier ne se trouve dans aucun dossier spécifique, mais au chemin d'accès de premier niveau de l'espace.
LOAD * FROM [lib://TeamSharedSpace:DataFiles/orders.csv];
Références à un chemin d'accès à un dossier spécifique dans un espace
Cet exemple charge le fichier orders_Europe.csv à partir du dossier Orders By Region dans un espace personnel.
LOAD * FROM [lib://DataFiles/Orders By Region/orders_Europe.csv];
Cet exemple charge le fichier orders_Europe.csv à partir du dossier Orders By Region dans un espace partagé, un espace géré ou un espace de données. Le nom de l'espace est SalesSpace.
LOAD * FROM [lib://SalesSpace:DataFiles/Orders By Region/orders_Europe.csv];
Pour plus d'informations sur le référencement de la structure de dossiers d'espaces dans les scripts de chargement, consultez Référencement de la structure de dossiers d'un espace dans le développement d'applications et de scripts.