# Exemple de Job implémentant les différents modèles de rapprochement

## Données source

La source principale se présente comme suit :

* ID : Name (Nom)
* 1 : Shong
* 2 : Elisa
* 3 : Sabrina

La source Lookup se présente comme suit :

* ID : E-mail
* 1 : Shong1@talend.com
* 1 : Shong2@talend.com
* 2 : Elisa@talend.com
* 3 : Sabrina@talend.com

Pour effectuer une jointure interne entre la source principale et la source Lookup et produire une structure de données basée sur les deux sources :

| ID | Nom | Email |
| --- | --- | --- |

Le résultat varie en fonction du modèle de rapprochement à utiliser.

## Créer le Job

Utilisez un composant tFixedFlowInput pour générer la source principale.

![Vue Basic settings du tFixedFlowInput.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_main_source.png)

Utilisez un autre tFixedFlowInput pour générer la source de lookup.

![Vue Basic settings du tFixedFlowInput.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_lookup_source.png)

Utilisez le tMap pour exécuter une jointure interne, puis sortez le résultat vers un composant tLogRow (via le mode Table) qui l’imprime dans la console.

![Composant tMap.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_example_job.png) ![Éditeur du tMap.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_tMap_setting.png)

## Utiliser les modèles de rapprochement pour générer différents résultats

Unique match : option par défaut pour l'opération JOIN. Cette option écrit en sortie le dernier enregistrement correspondant depuis la source Lookup.

![Option Unique match par défaut.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_Unique_match.png)

Le résultat de l'opération JOIN par le modèle **Unique match** se présente comme suit :

```
Starting Job tMap_Match_modes at 17:46 25/09/2013.

[statistics] connecting to socket on port 3367
[statistics] connected
.--+-------+-------------------.
|          tLogRow_2           |
|=-+-------+------------------=|
|ID|Name   |Email              |
|=-+-------+------------------=|
|1 |Shong  |Shong2@talend.com  |
|2 |Elisa  |Elisa@talend.com   |
|3 |Sabrina|Sabrina1@talend.com|
'--+-------+-------------------'
[statistics] disconnected
Job tMap_Match_modes ended at 17:46 25/09/2013. [exit code=0]
```

First match : écrit en sortie le premier enregistrement correspondant dans la source du lookup.

![Option First match.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_first_match.png)

Le résultat de l'opération JOIN par le modèle **First match** se présente comme suit :

```
Starting Job tMap_Match_modes at 17:51 25/09/2013.

[statistics] connecting to socket on port 3942
[statistics] connected
.--+-------+-------------------.
|          tLogRow_2           |
|=-+-------+------------------=|
|ID|Name   |Email              |
|=-+-------+------------------=|
|1 |Shong  |Shong1@talend.com  |
|2 |Elisa  |Elisa@talend.com   |
|3 |Sabrina|Sabrina1@talend.com|
'--+-------+-------------------'
[statistics] disconnected
Job tMap_Match_modes ended at 17:51 25/09/2013. [exit code=0]
```

All match : écrit en sortie tous les enregistrements correspondants dans la source du lookup.

![Option All match.](https://help.qlik.com/talend/fr-FR/components/8.0/Resources/images/190513286_all_match.png)

Le résultat de l'opération JOIN par le modèle **All match** se présente comme suit :

```
Starting Job tMap_Match_modes at 17:58 25/09/2013.

[statistics] connecting to socket on port 3381
[statistics] connected
.--+-------+-------------------.
|          tLogRow_2           |
|=-+-------+------------------=|
|ID|Name   |Email              |
|=-+-------+------------------=|
|1 |Shong  |Shong1@talend.com  |
|1 |Shong  |Shong2@talend.com  |
|2 |Elisa  |Elisa@talend.com   |
|3 |Sabrina|Sabrina1@talend.com|
'--+-------+-------------------'
[statistics] disconnected
Job tMap_Match_modes ended at 17:58 25/09/2013. [exit code=0]
```