# Concatenate

`Concatenate` est un préfixe de chargement de script qui permet d'ajouter un ensemble de données à une table en mémoire qui existe déjà. Il est souvent utilisé pour ajouter différents ensembles de données transactionnelles à une seule table de faits centrale ou pour créer des ensembles de données de référence communs d'un type spécifique provenant de différentes sources. Sa fonctionnalité est similaire à celle d'un opérateur SQL UNION.

La table obtenue d'une opération `concatenate` contiendra l'ensemble de données d'origine avec les nouvelles lignes de données ajoutées au bas de cette table. Les tables source et cible peuvent contenir des champs différents. Lorsque ces champs sont différents, la table obtenue est élargie pour représenter le résultat combiné de l'ensemble des champs présents dans les deux tables source et cible.

Concatenate[ (tablename ) ] ( loadstatement | selectstatement )

Arguments

| Argument | Description |
| --- | --- |
| ` tablename  ` | Nom d'une table existante. La table nommée sera la cible de l'opération `Concatenate` et l'ensemble des enregistrements de données chargés seront ajoutés à cette table. Si le paramètre `tablename` n'est pas utilisé, la table cible sera la dernière table chargée avant cette instruction. |
| ` loadstatement/selectstatement  ` | L'argument `loadstatement/selectstatement` qui suit l'argument `tablename` sera concaténé à la table spécifiée. |

## Paramètres régionaux

Sauf indication contraire, les exemples de cette rubrique utilisent le format de date suivant : MM/JJ/AAAA. Le format de date est indiqué dans l'instruction `SET DateFormat` de votre script de chargement de données. Le format de date par défaut peut être différent dans votre système en raison de vos paramètres régionaux et d'autres facteurs. Vous pouvez modifier les formats utilisés dans les exemples ci-dessous en fonction de vos besoins. Ou vous pouvez modifier les formats utilisés dans votre script de chargement pour qu'ils correspondent à ceux de ces exemples.

Les paramètres régionaux par défaut des applications sont basés sur les paramètres système régionaux de l'ordinateur ou du serveur sur lequel Qlik Sense est installé. Si le serveur Qlik Sense auquel vous accédez est configuré sur la Suède, l'éditeur de chargement de données utilisera les paramètres régionaux suédois pour les dates, l'heure et la devise. Ces paramètres de format régionaux ne sont pas liés à la langue affichée dans l'interface utilisateur Qlik Sense. Qlik Sense sera affiché dans la même langue que celle du navigateur que vous utilisez.

Exemple de fonction

| Exemple | Résultat |
| --- | --- |
| `Concatenate(Transactions)<br><br>Load …. ;` | Les données chargées dans l'instruction LOAD sous le préfixe `Concatenate` seront ajoutées à la table en mémoire existante appelée `Transactions` (en supposant qu'une table appelée `Transactions` a été chargée avant ce point dans le script de chargement). |

## Exemple 1 – ajout de plusieurs ensembles de données à une table cible avec le préfixe de chargement Concatenate

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

#### Script de chargement et résultats

Vue d'ensemble

Dans cet exemple, vous allez charger deux scripts dans l'ordre séquentiel.

* Le premier script de chargement contient un ensemble de données initial avec des dates et des montants, envoyé à une table appelée `Transactions`.

* Le deuxième script contient les éléments suivants :

  * Un deuxième ensemble de données, ajouté à l'ensemble de données initial via le préfixe `Concatenate`. Cet ensemble de données comporte un champ supplémentaire, `type`, qui ne figure pas dans l'ensemble de données initial.
  * Le préfixe `Concatenate`.

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.

Premier script de chargement

```

Transactions: 
Load * Inline [ 

id, date, amount 
3750, 08/30/2018, 23.56 
3751, 09/07/2018, 556.31 
3752, 09/16/2018, 5.75 
3753, 09/22/2018, 125.00 
3754, 09/22/2018, 484.21 
3756, 09/22/2018, 59.18 
3757, 09/23/2018, 177.42 
]; 
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* `id`

* `date`

* `amount`

Tableau de résultats du premier script de chargement

| id | date | amount |
| --- | --- | --- |
| 3750 | 08/30/2018 | 23.56 |
| 3751 | 09/07/2018 | 556.31 |
| 3752 | 09/16/2018 | 5.75 |
| 3753 | 09/22/2018 | 125.00 |
| 3754 | 09/22/2018 | 484.21 |
| 3756 | 09/22/2018 | 59.18 |
| 3757 | 09/23/2018 | 177.42 |

Le tableau montre l'ensemble de données initial.

Deuxième script de chargement

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous.

```

Concatenate(Transactions) 
Load * Inline [ 
id, date, amount, type 
3758, 10/01/2018, 164.27, Internal 
3759, 10/03/2018, 384.00, External 
3760, 10/06/2018, 25.82, Internal 
3761, 10/09/2018, 312.00, Internal 
3762, 10/15/2018, 4.56, Internal 
3763, 10/16/2018, 90.24, Internal 
3764, 10/18/2018, 19.32, External 
]; 
```

Résultats

Chargez les données et accédez à la feuille. Créez ce champ comme dimension.

* `type`

Tableau de résultats du deuxième script de chargement

| id | date | amount | type |
| --- | --- | --- | --- |
| 3750 | 08/30/2018 | 23.56 | - |
| 3751 | 09/07/2018 | 556.31 | - |
| 3752 | 09/16/2018 | 5.75 | - |
| 3753 | 09/22/2018 | 125.00 | - |
| 3754 | 09/22/2018 | 484.21 | - |
| 3756 | 09/22/2018 | 59.18 | - |
| 3757 | 09/23/2018 | 177.42 | - |
| 3758 | 10/01/2018 | 164.27 | Internal |
| 3759 | 10/03/2018 | 384.00 | External |
| 3760 | 10/06/2018 | 25.82 | Internal |
| 3761 | 10/09/2018 | 312.00 | Internal |
| 3762 | 10/15/2018 | 4.56 | Internal |
| 3763 | 10/16/2018 | 90.24 | Internal |
| 3764 | 10/18/2018 | 19.32 | External |

Notez les valeurs nulles du champ `type` des sept premiers enregistrements chargés pour lesquels la valeur `type` n'a pas été définie.

## Exemple 2 – ajout de plusieurs ensembles de données à une table cible via une concaténation implicite

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

#### Script de chargement et résultats

Vue d'ensemble

Un cas d'usage type de l'ajout implicite de données se produit lorsque vous chargez plusieurs fichiers de données structurées de la même manière et que vous souhaitez tous les ajouter à une table cible.

Par exemple, en utilisant `wildcards` dans des noms de fichier avec une syntaxe similaire à l'exemple suivant :

```
	 myTable: 
	  Load * from [myFile_*.qvd] (qvd); 
						
```

ou dans des boucles utilisant des constructions similaires à l'exemple suivant :

```

	for each file in filelist('myFile_*.qvd') 

	myTable: 
	Load * from [$(file)] (qvd); 

	next file 
```

Note InformationsLa concaténation implicite se produira entre deux tables, quelles qu'elles soient, chargées comportant des champs portant le même nom, même si elles ne sont pas définies l'une par rapport à l'autre dans le script. Cela peut entraîner l'ajout involontaire de données à des tables. Si vous ne souhaitez pas qu'une table secondaire contenant des champs identiques soit ajoutée de cette manière, utilisez le préfixe de chargement `NoConcatenate`. Le renommage de la table à l'aide d'une autre balise de nom de table n'est pas suffisant pour empêcher la concaténation implicite. Pour plus d'informations, voir [NoConcatenate](https://help.qlik.com/fr-FR/sense/November2025/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/NoConcatenate.htm).

Dans cet exemple, vous allez charger deux scripts dans l'ordre séquentiel.

* Le premier script de chargement contient un ensemble de données initial avec quatre champs, envoyé à une table appelée `Transactions`.

* Le deuxième script de chargement contient un ensemble de données comportant les mêmes champs que le premier ensemble de données.

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à un nouvel onglet.

Premier script de chargement

```

Transactions: 
Load * Inline [ 
id, date, amount, type 
3758, 10/01/2018, 164.27, Internal 
3759, 10/03/2018, 384.00, External 
3760, 10/06/2018, 25.82, Internal 
3761, 10/09/2018, 312.00, Internal 
3762, 10/15/2018, 4.56, Internal 
3763, 10/16/2018, 90.24, Internal 
3764, 10/18/2018, 19.32, External 
]; 
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* `id`

* `date`

* `amount`

* `type`

Tableau de résultats du premier script de chargement

| id | date | type | amount |
| --- | --- | --- | --- |
| 3758 | 10/01/2018 | Internal | 164.27 |
| 3759 | 10/03/2018 | External | 384.00 |
| 3760 | 10/06/2018 | Internal | 25.82 |
| 3761 | 10/09/2018 | Internal | 312.00 |
| 3762 | 10/15/2018 | Internal | 4.56 |
| 3763 | 10/16/2018 | Internal | 90.24 |
| 3764 | 10/18/2018 | External | 19.32 |

Le tableau montre l'ensemble de données initial.

Deuxième script de chargement

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous.

```

Load * Inline [ 
id, date, amount, type 
3765, 11/03/2018, 129.40, Internal 
3766, 11/05/2018, 638.50, External 
]; 
```

Résultats

Chargez les données et accédez à la feuille.

Tableau de résultats du deuxième script de chargement

| id | date | type | amount |
| --- | --- | --- | --- |
| 3758 | 10/01/2018 | Internal | 164.27 |
| 3759 | 10/03/2018 | External | 384.00 |
| 3760 | 10/06/2018 | Internal | 25.82 |
| 3761 | 10/09/2018 | Internal | 312.00 |
| 3762 | 10/15/2018 | Internal | 4.56 |
| 3763 | 10/16/2018 | Internal | 90.24 |
| 3764 | 10/18/2018 | External | 19.32 |
| 3765 | 11/03/2018 | Internal | 129.40 |
| 3766 | 11/05/2018 | External | 638.50 |

Le deuxième ensemble de données a été implicitement concaténé à l'ensemble de données initial, car ils avaient des champs identiques.