Googleスプレッドシート QUERY関数 Where句の基本的な使い方

こんにちは。コロナワクチン2回目の接種後フィーバータイム(発熱)が始まりそうなRoidです。副反応が本格化する前に、今日の記事を書いてしまいたいと思います。

今回はQUERY関数の重要な要素であるWhere句について解説します。前回記事で、もう1つの重要な要素であるSelect句について書いていますので、併せてご参照ください。

目次

Where句の役割と基本構造

Select句の役割と特徴は以下の通りです。

役割と特徴
  • 照会先の表データから抽出する際の抽出条件を指定するためのもの
  • 条件は1つ(単一条件)でも、複数(複数条件)でも指定することができる
  • 様々な計算記号(演算子)を使用して条件を指定することができる
  • 除外条件や部分一致を条件として指定することもできる ※これは次回説明します。

似た挙動をする機能は、EXCELやGoogleスプレッドシートでも標準で搭載されているフィルター機能になるかと思います。画面上でフィルタ条件を指定する代わりに、関数の照会命令文(クエリ)の中で条件を記載するのが、Where句になります。

早速、実際の使い方を見てみましょう。

=QUERY(A1:F,”select * where B = ‘キャンペーンA'”)

このクエリ内で記載している内容は以下の通りになります。

クエリ内容の詳細
  1. select * で参照先の表データから全ての項目を指定
  2. where B=’キャンペーンA’ でB列(キャンペーン名)が「キャンペーンA」と等しいという条件を指定

Where句で「XXXXに等しい」という条件を指定する際、「XXXX」に当たる部分は両端を「’」(半角のシングルクォーテーション)で囲む必要があります。

複数条件の指定

先程のクエリでは、「B列が’キャンペーンA’と等しいもの」という単一条件で抽出を行っていましたが、前述の通りWhere句では複数条件の指定も可能です。複数条件の指定の仕方は、AND条件とOR条件の2つがあります。

条件意味書き方
ANDANDで繋ぐ条件を全て満たすものを抽出Where B=’キャンペーンA’ AND D >5000
ORORで繋ぐ条件のいずれかを満たすものを抽出Where B=’キャンペーンA’ OR B=’キャンペーンC’
Where句の複数条件指定で使用する条件識別子

実際に抽出される内容を見てみまししょう。

AND条件の使用例

=QUERY(A1:F,”select * where B = ‘キャンペーンA’ AND D > 5000″)

この例では、キャンペーン名が「キャンペーンA」に等しい かつ 「広告料金」が5000よりも大きい の両方を満たすデータが抽出されました。

OR条件の使用例

=QUERY(A1:F,”select * where B = ‘キャンペーンA’ AND B = ‘キャンペーンC'”)

この例では、キャンペーン名が「キャンペーンA」に等しい もしくは 「キャンペーンC」に等しいのいずれかを満たすデータが抽出されました。

Where句で使用できる計算記号(演算子)の種類

ここまで紹介した例では、「XXXXと等しい」(= イコール)と「xxxxよりも大きい」(> 大なり)に2つの計算記号を使用しました。このような計算記号を演算子と呼びます。
Where句では、「=」と「>」の他にも次のような演算子を使用することが出来ます。

演算子書き方意味
=A = ‘XXXX’A列が「XXXX」と等しい       
<A < 1000A列が1000よりも小さい
>A > 1000A列が1000よりも大きい
<=A <= 1000A列が1000以下
>=A >= 1000A列が1000以上
<>A <> ‘XXXX’A列が「XXXX」と等しくない
!=A != ‘XXXX’A列が「XXXX」と等しくない

まとめと次回のお話

今回の記事では、GoogleスプレッドシートのQUERY関数(クエリ関数)で使用する、Where句の基本的な使い方について解説させていただきました。

今回説明した特徴
  • 照会先の表データから抽出する際の抽出条件を指定するためのもの
  • 条件は1つ(単一条件)でも、複数(複数条件)でも指定することができる
  • 様々な計算記号(演算子)を使用して条件を指定することができる

だいぶ長くなってしまったので、今回はここまでとして、次回の記事では、空白や部分一致を条件として指定する方法を解説させていただきます。特に、部分一致をマスターすることができれば、抽出できるデータの幅が大きく広がって、自分がほしいと思うデータにより早く、よりラクに到達することできるようになります。

少し熱も上がって来ましたので、本日はここまで。御機嫌よう。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
目次
閉じる