ComeçarComece de graça

Mesclando dados aninhados

A equipe de RH armazena dados de funcionários em dois arquivos JSON separados: um com informações básicas e outro com atributos adicionais. Para montar o perfil completo do funcionário, você precisa fazer um join dessas tabelas usando um identificador em comum.

Um inner join combina linhas de duas tabelas quando a coluna de junção coincide — como juntar duas listas de convidados pelo nome. As classes JsonReader, JsonReadOptions e Table já foram importadas para você.

Este exercício faz parte do curso

Importando dados em Java

Ver curso

Instruções do exercício

  • Defina o nome da tabela para o primeiro arquivo JSON.
  • Complete a cadeia do builder para o segundo arquivo.
  • Faça o join das tabelas na coluna "id".

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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());
    }
}
Editar e executar o código