URLをコピーしました!
スキルアップを始める!

【Googleスプレッドシート】QUERY関数|クエリ一覧・まとめ

Googleスプレッドシート
\スプレッドシートのスキルアップはこちら!/ スプレッドシート
\ワードプレスのスキルアップはこちら!/ WordPress入門読本

QUERY関数で使えるAPI一覧

これまで、QUERY関数の使い方や応用を実践していきました。

QUERY(データ, クエリ, [見出し])

QUERY関数は、Google Visualization API のクエリ言語を使用して、データ全体に対するクエリを実行します。

今回は「Google Visualization API のクエリ言語」について、これまでの総まとめとして、まとめます。

オフィシャルのドキュメントはこちら▼

Query Language Reference (Version 0.7)  |  Charts  |  Google for Developers
Learn how to use this language and discover detailed documentation for its classes, functions, and element.

Language Clauses(言語条項)

クエリ関数では、下記のようなクエリ言語が使えるようになっています。

ClauseUsage
selectSelects which columns to return, and in what order. If omitted, all of the table’s columns are returned, in their default order.
whereReturns only rows that match a condition. If omitted, all rows are returned.
group byAggregates values across rows.
pivotTransforms distinct values in columns into new columns.
order bySorts rows by values in columns.
列の行値を並び替える
limitLimits the number of returned rows.
offsetSkips a given number of first rows.
labelSets column labels.
formatFormats the values in certain columns using given formatting patterns.
optionsSets additional options.
fromThe from clause has been eliminated from the language.

色々とできますね!

SELECT *(列選択)

selectを使うと「範囲の選択」ができます。アスタリスクにすると全ての列を抽出、列名を指定すると、指定した列が抽出されます。

=query(estimate_quantity_flower!A2:K,"select *")
=query(estimate_quantity_flower!A2:K,"select A")
=query(estimate_quantity_flower!A2:K,"select A,B,C")
=query(estimate_quantity_flower!A2:K,"select C,B,A")

where

whereを使うと「条件指定」ができます。

=query(estimate_quantity_flower!A2:K,"select * where F = 'スプレー菊'")

複数指定の場合は、andでつなぎます。

=query(estimate_quantity_flower!A2:K,"select * where B='板橋' and F='スプレー菊'")

WHERE ORとすると、複数の条件(○○または○○)を指定できます。

=query(estimate_quantity_flower!A2:K,"select * where B='板橋' or B='スプレー菊'")

[rml_read_more]

group by

列をまとめて集計します。

=query(estimate_quantity_flower!A2:K,"select F,count(F) where F is not null group by F")

count(F)の場所をAVG(F)とすると、平均値を取得します。sum(F)とすると、グループの合計を取得します。max(F)で最大値、min(F)で最小値を取得できます。

pivot

pivotの使い方ができます。

=query(estimate_quantity_flower!A2:K,"select F,count(F) where F is not null group by F pivot G")

G列をピポッドとして出力できます。

limit

出力する行数を制限できます。例えば「3行まで」といった制限が可能です。

=query(estimate_quantity_flower!A2:K,"select * limit 3")

offset

offsetを使うと、指定した行数を飛ばして表示することができます。例えば10行先まで飛ばしてから抽出したい場合はoffset 10とします。

=QUERY(範囲, "offset 数")

label

列の見出し行にラベル表示ができます。

=QUERY(範囲, "label 列 '名前' ")

複数列にラベルを付けるときは、カンマで区切ります。

=QUERY(範囲, "label 列 '名前',列2 '名前' ")

group byと組み合わせて、グループ化した項目のラベルを上書きすることも可能です。

format

formatは表示形式を変更することができます。

=QUERY(データ範囲,”FORMAT 列 '書式形式'”)
=QUERY(データ範囲,”FORMAT 列 'mm月dd日'”)

mm月dd日形式に変換されます。

options

オプション(dditional options)では、さらにいろいろなクエリが可能です。order byを使うと、指定した列の並び順を昇順・降順で並び替えることができます。

=QUERY(範囲 "order by 列 asc")
=QUERY(範囲 "order by 列 desc")

from

※from 句は言語から削除されたようです。

Query Language Reference (Version 0.7)  |  Charts  |  Google for Developers
Learn how to use this language and discover detailed documentation for its classes, functions, and element.

QUERY予約語一覧・まとめ

次の予約語を識別子として使用する場合は、逆引用符で囲む必要があります。

  • and
  • asc
  • by
  • date
  • datetime
  • desc
  • false
  • format
  • group
  • label
  • limit
  • not
  • offset
  • options
  • or
  • order
  • pivot
  • select
  • timeofday
  • timestamp
  • true

まとめ

このような感じで「クエリ関数」を使うことで様々な条件でデータを抽出することができます!クエリ関数については、いくつかの記事で使い方を書いていますので、他のページもご参考ください。

Kindle Unlimited 会員は無料で購読できます
購読はこちら
Kindle Unlimited 会員は無料で購読できます
購読はこちら