Menggabungkan data bersarang
Tim HR menyimpan data karyawan dalam dua berkas JSON terpisah: satu berisi informasi dasar dan satu lagi berisi atribut tambahan. Untuk membangun profil karyawan yang lengkap, Anda perlu menggabungkan tabel-tabel ini menggunakan pengenal yang sama.
Inner join menggabungkan baris dari dua tabel ketika kolom penggabungnya cocok—mirip seperti menggabungkan dua daftar tamu berdasarkan nama. Kelas JsonReader, JsonReadOptions, dan Table telah diimpor untuk Anda.
Latihan ini adalah bagian dari kursus
Mengimpor Data di Java
Petunjuk latihan
- Tetapkan nama tabel untuk berkas JSON pertama.
- Lengkapi rangkaian builder untuk berkas kedua.
- Gabungkan tabel pada kolom
"id".
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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());
}
}