Associate Data Practitioner(Google Cloud) 問題集

Google Cloud 認定資格 Associate Data Practitioner 試験対策公式Exam Guide(2026年10月19日時点)準拠

Associate Data Practitioner(Google Cloud)の日本語問題集。全180問に解説つき。

Associate Data Practitioner(Google Cloud) 無料問題 5 / 10 ・ 分野2: データ分析とプレゼンテーション

ordersのitems列がARRAY<STRUCT<sku STRING, qty INT64>>である。明細ごとに1行へ展開する操作はどれか。

  1. SELECT AS STRUCTで行を構造化する
  2. CROSS JOIN UNNEST(items)で展開する
  3. ARRAY_AGG(items)で配列を集約する
  4. ARRAY_LENGTH(items)で長さを求める
正解と解説を見る

正解: B

正解の理由
公式ドキュメント「Work with arrays」の「Converting elements in an array to rows in a table」には、"For each row N in the source table, UNNEST flattens the ARRAY from row N into a set of rows containing the ARRAY elements, and then a correlated INNER JOIN or CROSS JOIN combines this new set of rows with the single row N from the source table." とある。配列の要素を行として展開するため、明細のskuやqtyを通常の列のように分析できる。

違う選択肢
「ARRAY_AGG(items)で配列を集約する」…行を配列へまとめる方向の集約であり、配列の各明細を1行へ展開する操作とは逆になる。
「SELECT AS STRUCTで行を構造化する」…選択した列を構造体にまとめる方向であり、既存配列を複数の明細行へ展開する操作ではない。
「ARRAY_LENGTH(items)で長さを求める」…明細数は取得できるが、各skuとqtyを別行として取り出す処理は行われない。

押さえどころ
配列を展開すると注文ごとの行数は明細数に増える。注文金額など親の値をそのままSUMすると重複集計になるため、求める粒度に合わせた集約が必要である。

Associate Data Practitioner(Google Cloud)の演習アプリ(無料10問・全問は解錠で)へ

問題集(note)を見る