Google スプレッドシートには、データベースのように検索や集計を行うための強力な関数が用意されています。その中でも、QUERY 関数は特に便利です。
QUERY 関数とは
QUERY 関数は、スプレッドシート上のデータをSQLのような形式で検索し、結果を新しいシートに出力します。QUERY 関数を使うことで、スプレッドシート上で複雑なデータの抽出や集計を行うことができます。
使い方
QUERY 関数は、次の形式で使用します。
=QUERY(range, query, [headers])
- range: 検索対象となるデータの範囲を指定します。
- query: SQLのような形式で検索条件を指定します。
- headers: 結果に含める列の見出しを指定します。省略可能で、デフォルトは1行目の列の見出しになります。
例
次に、QUERY 関数の使用例を示します。
この例では、A1:D7の範囲のデータから、D列が「2022-01-01」よりも新しいものを抽出し、A列、B列、C列の合計値を集計しています。
注意事項
- QUERY 関数は、大文字・小文字を区別します。
- QUERY 関数は、日本語を含むデータを扱う場合、文字コードを「UTF-8」に設定する必要があります。
- QUERY 関数は、非常に強力な関数ですが、使用には注意が必要。大量のデータを扱う場合は、パフォーマンスに影響を与えることがあります。また、QUERY 関数は、一部の制限事項があるため、複雑な検索条件を指定する場合は、他の関数やスクリプトを組み合わせることも考えられます。
上級編QUERY関数
QUERY 関数を使うことで、スプレッドシート上で高度なデータの抽出や集計を行うことができます。また、QUERY 関数には、複雑な検索条件を指定するためのアドバンスドオプションも用意されています。
JOIN
JOIN オプションを使うことで、複数のシートやテーブルを結合して検索することができます。
この例では、A1:D7の範囲のデータとE1:G5の範囲のデータをA列で結合して、D列が「2022-01-01」よりも新しいものを抽出し、A列、B列、C列の合計値を集計しています。
ORDER BY
ORDER BY オプションを使うことで、結果を特定の列でソートすることができます。
この例では、D列が「2022-01-01」よりも新しいものを抽出し、A列、B列、C列の合計値を集計し、A列で降順にソートしています。
LIMIT
LIMIT オプションを使うことで、結果を特定の件数だけに制限することができます。
=QUERY(A1:D7, “SELECT A, B, SUM(C) WHERE D > date ‘2022-01-01’ GROUP BY A, B ORDER BY A DESC LIMIT 10”, 1)
この例では、D列が「2022-01-01」よりも新しいものを抽出し、A列、B列、C列の合計値を集計し、A列で降順にソートし、上位10件だけを結果として返しています。
まとめ
本記事では、Google スプレッドシートの QUERY 関数の使い方について詳しく説明しました。QUERY 関数は、スプレッドシート上で簡単に高度なデータの抽出や集計を行うことができ、また、アドバンスドオプションを使うことでさらに複雑な検索条件を指定することができます。
以下の Mermaid グラフは、QUERY 関数のワークフローを示しています。
スプレッドシート上でのデータ処理においては、QUERY 関数は欠かせないツールの一つです。是非、実際に使ってみてください。
コメント