CommencerCommencer gratuitement

Fusionner des données imbriquées

L’équipe RH stocke les données des employé·e·s dans deux fichiers JSON distincts : l’un contient les informations de base et l’autre des attributs supplémentaires. Pour construire un profil complet, vous devez joindre ces tables à l’aide d’un identifiant commun.

Une jointure interne (inner join) combine les lignes de deux tables lorsque la colonne de jointure correspond — comme fusionner deux listes d’invités par nom. Les classes JsonReader, JsonReadOptions et Table ont été importées pour vous.

Cet exercice fait partie du cours

Importer des données en Java

Afficher le cours

Instructions

  • Définissez le nom de la table pour le premier fichier JSON.
  • Complétez le chaînage du builder pour le second fichier.
  • Joignez les tables sur la colonne "id".

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

public class NestedEmployees {
    public static void main(String[] args) {

        // Set table name for first JSON
        JsonReadOptions opts1 = JsonReadOptions
                .builder("employees.json")
                .____("Main")
                .build();
        Table main = new JsonReader().read(opts1);

        // Complete builder chain for second JSON
        JsonReadOptions opts2 = JsonReadOptions
                .builder("employees_extra.json")
                .tableName("Extra")
                .____();
        Table extra = new JsonReader().read(opts2);

        System.out.println("Main columns: " + main.columnNames());
        System.out.println("Extra columns: " + extra.columnNames());

        // Join tables on id column
        Table joined = main.____("id").____(extra);

        System.out.println("\nJoined table (inner join on id):");
        System.out.println(joined.print());
    }
}
Modifier et exécuter le code