CommencerCommencer gratuitement

Merging nested data

The HR team stores employee data across two separate JSON files: one containing basic information and another containing additional attributes. To build a complete employee profile, you need to join these tables using a common identifier.

An inner join combines rows from two tables where the join column matches - like merging two guest lists by name. The JsonReader, JsonReadOptions, and Table classes have been imported for you.

Cet exercice fait partie du cours

Importing Data in Java

Afficher le cours

Instructions

  • Set the table name for the first JSON file.
  • Complete the builder chain for the second file.
  • Join the tables on the "id" column.

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