Q37 — AWS DEA-C01 第1章

第 37/100 問 | ← 第1章

データエンジニアは、Amazon S3内の販売データをAmazon Athenaで分析しています。データエンジニアは、sales_dataというテーブルから2023年の販売金額をいくつかの製品について取得するクエリを記述しました。しかし、このクエリはsales_dataテーブル内にあるすべての製品について結果を返していません。データエンジニアは、この問題を解決するためにクエリをトラブルシューティングする必要があります。 データエンジニアの元のクエリは以下の通りです: SELECT product_name, sum(sales_amount) FROM sales_data - WHERE year = 2023 - GROUP BY product_name - これらの要件を満たすために、データエンジニアはAthenaクエリをどのように修正すべきですか?

正解: B. WHERE year = 2023をWHERE extract(year FROM sales_data) = 2023に変更する。

解説

正解はBです。元のクエリでは、「year = 2023」という条件で2023年のデータをフィルタリングしていますが、これは問題を引き起こす可能性があります。Athenaでは、日付型のフィールドに対して年を正確に抽出してフィルタリングするには、「extract(year FROM フィールド名) = 年」の形式を使用するのが一般的です。選択肢Aは集計方法を変更するものであり、要件を満たしません。選択肢Cは条件を追加するものですが、この問題の解決には不適切です。選択肢DはGROUP BY句を削除するものであり、これも不適切です。したがって、Bの選択肢のように「WHERE year = 2023」を「WHERE extract(year FROM sales_data) = 2023」に変更すべきです。