· BigQuery とデータ分析 · 4 min read
BigQuery を使ったデータ分析入門:SQL クエリの書き方
Google BigQueryを使用したデータ分析の基礎と、効果的なSQLクエリの書き方を学ぶ初心者向けガイド

BigQuery は、Google が提供する強力なクラウドベースのデータウェアハウスソリューションです。大規模なデータセットに対して高速なクエリを実行し、効率的にデータ分析を行うことができます。本記事では、BigQuery の基本的な使い方と SQL クエリの書き方について解説します。
BigQuery の基本
BigQuery の主な特徴:
- スケーラビリティ:ペタバイト規模のデータを処理可能
- 高速性:複雑なクエリも数秒で結果を返す
- コスト効率:使用量に応じた課金体系
SQL クエリの基本構造
BigQuery では、標準的な SQL を使用してデータにアクセスします。基本的な SQL クエリの構造は以下の通りです:
SELECT column1, column2
FROM `project.dataset.table`
WHERE condition
GROUP BY column1
ORDER BY column2 DESC
LIMIT 10
それでは、各要素について詳しく見ていきましょう。
SELECT 文
SELECT 文は、クエリの結果として取得したい列を指定します。
例:
SELECT user_id, product_name, purchase_date
FROM `ecommerce.sales`
すべての列を選択する場合は、アスタリスク(*)を使用します:
SELECT *
FROM `ecommerce.sales`
FROM 句
FROM 句では、クエリの対象となるテーブルを指定します。BigQuery では、project.dataset.table
の形式でテーブルを指定します。
例:
FROM `my-project.ecommerce_data.sales_2024`
WHERE 句
WHERE 句を使用して、条件に合致する行のみを抽出できます。
例:
SELECT product_name, sale_price
FROM `ecommerce.sales`
WHERE sale_price > 1000
GROUP BY 句
GROUP BY 句は、指定した列でデータをグループ化します。通常、集計関数と組み合わせて使用します。
例:
SELECT product_category, SUM(sale_price) as total_sales
FROM `ecommerce.sales`
GROUP BY product_category
ORDER BY 句
ORDER BY 句を使用して、結果を特定の列に基づいて並べ替えることができます。
例:
SELECT product_name, sale_price
FROM `ecommerce.sales`
ORDER BY sale_price DESC
LIMIT 句
LIMIT 句は、返される行数を制限します。
例:
SELECT product_name, sale_price
FROM `ecommerce.sales`
ORDER BY sale_price DESC
LIMIT 5
高度な SQL テクニック
サブクエリ
サブクエリを使用すると、クエリ内で別のクエリを実行できます。
例:
SELECT product_name, sale_price
FROM `ecommerce.sales`
WHERE sale_price > (
SELECT AVG(sale_price)
FROM `ecommerce.sales`
)
JOIN の使用
複数のテーブルを結合してデータを分析する場合、JOIN を使用します。
例:
SELECT s.product_name, c.customer_name, s.sale_price
FROM `ecommerce.sales` s
JOIN `ecommerce.customers` c
ON s.customer_id = c.id
BigQuery のパフォーマンス最適化
BigQuery で効率的にクエリを実行するためのヒント:
- 必要な列のみを選択する
- パーティションテーブルを活用する
- 大規模な JOIN 操作を避ける
- クエリの実行プランを確認する
まとめ
BigQuery は、大規模なデータセットに対して効率的に分析を行うための強力なツールです。基本的な SQL の知識があれば、簡単に使い始めることができます。本記事で紹介したテクニックを実践し、データ分析スキルを磨いていきましょう。
より詳細な BigQuery の使い方や高度なテクニックについては、Google Cloud 公式ドキュメントを参照してください。