【BigQuery】string_aggの使い方
BigQueryには、データ加工のために便利な関数がたくさん用意されています。
今回は、複数行にまたがる文字列の加工に便利なSTRING_AGGという関数を紹介します。
STRING_AGGにできること
以下のように、ユーザーが購入した果物が格納されたテーブルがあります。
ユーザー | 果物 |
---|---|
A | りんご |
A | バナナ |
A | いちご |
B | バナナ |
B | さくらんぼ |
このテーブルから、購入した果物をユーザー単位でまとめて、以下のように集計したいときにSTRING_AGGを使います。
ユーザー | 果物 |
---|---|
A | りんご,バナナ,いちご |
B | バナナ,さんくらんぼ |
STRING_AGGの書き方
ユーザー単位に購入した果物をまとめるには、以下のように書きます。
SELECT ユーザー, STRING_AGG(果物) FROM table GROUP BY ユーザー
参考書籍
このようにデータを加工するためには、様々なテクニックがあります。
STRING_AGGのように、便利な関数を知っているとSQLだけで、いろんなことが可能になります。
そんなときは、以下の書籍で前処理の方法と関数を知っておくと良いでしょう!
前処理大全[データ分析のためのSQL/R/Python実践テクニック]
- 作者:本橋 智光
- 発売日: 2018/04/13
- メディア: 大型本