ネストされたデータのマージ
HR チームは、従業員データを 2 つの JSON ファイルに分けて管理しています。1 つは基本情報、もう 1 つは追加の属性を格納しています。完全な従業員プロファイルを作成するには、共通の識別子を使って 2 つのテーブルを結合する必要があります。
内部結合(inner join)は、結合列の値が一致する行を 2 つのテーブルから組み合わせます。名前でゲストリストを統合するようなイメージです。JsonReader、JsonReadOptions、Table クラスはあらかじめインポートされています。
この演習はコースの一部です
Java でのデータインポート
演習の手順
- 最初の JSON ファイルのテーブル名を設定します。
- 2 番目のファイルのビルダーチェーンを完成させます。
"id"列を使ってテーブルを結合します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
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());
}
}